* net/tramp-imap.el (top): Autoload needed packages.
[bpt/emacs.git] / src / ChangeLog
CommitLineData
2aff7c53
YM
12010-01-22 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
2
3 * lisp.h (make_pure_string): String pointer arg now points to const.
4
5 * alloc.c (find_string_data_in_pure, make_pure_string): String pointer
6 args now point to const.
7
74327f7a
EZ
82010-01-22 Eli Zaretskii <eliz@gnu.org>
9
10 * lread.c (Fload): Don't treat files without .elc extension as
11 byte-compiled if they are ``magic'', i.e. `openp' returned -2 for
12 them. (bug#5303)
13
4d1e6632
KH
142010-01-20 Kenichi Handa <handa@m17n.org>
15
16 * coding.c (consume_chars): If ! multibyte and the encoder is ccl,
17 treat the source as actual byte sequence.
18
1fdede8f
AM
192010-01-19 Alan Mackenzie <acm@muc.de>
20
21 Fix spurious before-change-functions invocation from (insert ?\n).
22 * textprop.c (set_text_properties): rename parameter
23 `signal_after_change_p' to `coherent_change_p', and make the
24 invocation of `modify_region' conditional on it.
25
67477f30
JD
262010-01-19 Jan Djärv <jan.h.d@swipnet.se>
27
28 * xsettings.c (apply_xft_settings): Save settings in Vxft_settings
29 for debug purpose.
30 (syms_of_xsettings): Declare xft-settings.
31
244b023e
CY
322010-01-18 Chong Yidong <cyd@stupidchicken.com>
33
34 * editfns.c (Fcurrent_time_string): Doc fix (Bug#5408).
35
617364fe
CY
362010-01-16 Stefan Monnier <monnier@iro.umontreal.ca>
37
38 * xterm.c (event_handler_gdk): Block input (Bug#5037).
39
4fe22cdf
CY
402010-01-16 Chong Yidong <cyd@stupidchicken.com>
41
42 * emacs.c (standard_args): Adjust arg priorities to reflect how
43 they are processed in startup.el.
44
e118d2be
AS
452010-01-16 Andreas Schwab <schwab@linux-m68k.org>
46
47 * Makefile.in (lisp, shortlisp): Update.
48
523ae620
SM
492010-01-16 Stefan Monnier <monnier@iro.umontreal.ca>
50
51 * xterm.c (x_term_init): Instead of inhibiting GC while running Lisp
52 code, link the new kboard into all_kboard before running Lisp code,
53 and protect the new terminal with GCPRO (Bug#5365).
54 (x_term_init): Remove unused var `atom'.
55 (x_delete_display, x_delete_terminal): Remove unused var `i'.
56
f0d13888
JD
572010-01-15 Jan Djärv <jan.h.d@swipnet.se>
58
59 * xfns.c (x_get_current_desktop, x_get_desktop_workarea): New functions.
60 (Fx_create_frame): Call x_get_current_desktop and x_get_desktop_workarea
61 to find out usable size of the desktop. Don't make frames larger than
62 this. Bug #3643.
63
cc320f07
KH
642010-01-15 Kenichi Handa <handa@m17n.org>
65
66 * xdisp.c (CHAR_COMPOSED_P): New arg END_CHARPOS. Callers changed.
67
7ffdf101
CY
682010-01-15 Chong Yidong <cyd@stupidchicken.com>
69
70 * nsterm.m (Qnone): Define.
71
72 * nsfns.m (Qnone): Move definition to nsterm.m.
73
d12bd917
KH
742010-01-14 Kenichi Handa <handa@m17n.org>
75
76 * coding.c (detect_coding_iso_2022): Fix handling of euc-xx coding
77 systems.
78
d9a7c140
KH
792010-01-14 Kenichi Handa <handa@m17n.org>
80
81 Make auto-composition work on all buffers even if they are
82 fundamental mode.
83
84 * composite.c (Vauto_composition_mode): New variable.
85 (composition_compute_stop_pos): Check Vauto_composition_mode
86 instead of Vauto_composition_function.
87 (composition_adjust_point, Ffind_composition_internal): Likewise.
88 (syms_of_composite): Declare Lisp variable
89 "auto-composition-mode" here.
90
63286bb2
CY
912010-01-13 Chong Yidong <cyd@stupidchicken.com>
92
93 * xterm.c (x_term_init): Avoid garbage-collecting the new terminal
94 during call to vendor-specific-keysyms (Bug#5365).
95
c2623ee7
YM
962010-01-13 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
97
98 * keyboard.c (input_available_signal) [SYNC_INPUT]:
99 Call SIGNAL_THREAD_CHECK (Bug#5333).
100
101 * atimer.c (alarm_signal_handler) [!SYNC_INPUT]:
102 Call SIGNAL_THREAD_CHECK.
103
0b5397c2
SM
1042010-01-13 Stefan Monnier <monnier@iro.umontreal.ca>
105
106 Try to fix bug#5314. This is probably not the final word, tho.
107 * buffer.c (Fset_buffer_modified_p): Try and be careful not to modify
108 recent-auto-save-p as a side-effect.
109 * buffer.h (BUF_AUTOSAVE_MODIFF): New macro.
110 * buffer.c (Fkill_buffer, reset_buffer):
111 * editfns.c (Fsubst_char_in_region):
112 * fileio.c (Finsert_file_contents, Fdo_auto_save)
113 (Fset_buffer_auto_saved, Frecent_auto_save_p): Use it.
114
dc954cb2
KH
1152010-01-13 Kenichi Handa <handa@m17n.org>
116
117 Display buffer name, etc. in mode line by composing correctly.
118
119 * xdisp.c (reseat_to_string): Call composition_compute_stop_pos if
120 STRING is not nil.
0b5397c2 121 (display_mode_element): Adjust for the change of
dc954cb2
KH
122 decode_mode_spec and display_line.
123 (decode_mode_spec): Change arg MULTIBYTE to STRING.
124 (display_string): Handle the case that STRING is non-null and
125 LISP_STRING is not nil.
126
0b5397c2
SM
127 * xterm.c (x_draw_composite_glyph_string_foreground):
128 Pay attention to s->face->overstrike.
dc954cb2
KH
129
130 * composite.c (composition_reseat_it): Don't check PT if STRING is
131 non nil.
132
4a00eaca
YM
1332010-01-12 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
134
135 * keyboard.c (read_char): Don't apply previous change when current
136 buffer is unchanged by command execution.
137
60abb287
JD
1382010-01-12 Jan Djärv <jan.h.d@swipnet.se>
139
140 * keyboard.c (read_char): Return after executing from special map.
141
893db5bc
GM
1422010-01-12 Glenn Morris <rgm@gnu.org>
143
144 * emacs.c (REPORT_EMACS_BUG_PRETEST_ADDRESS): Set it to
145 bug-gnu-emacs rather than emacs-pretest-bug.
146
4d03ece0
CY
1472010-01-11 Chong Yidong <cyd@stupidchicken.com>
148
149 * nsterm.m (syms_of_nsterm): Initialize Qcontrol etc. before
150 initializing the Lisp variables that depend on them.
151
1df47e38
YM
1522010-01-11 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
153
154 * xfns.c (x_set_menu_bar_lines) [!USE_X_TOOLKIT && !USE_GTK]:
155 Clear areas that will not be updated after change of menu bar lines.
156 Clear the menu bar window's current matrix when the window gets empty.
157
2f1c6384
CY
1582010-01-09 Chong Yidong <cyd@stupidchicken.com>
159
e398c61c
CY
160 * intervals.h, textprop.c (extend_property_ranges): Return value
161 and args changed. Discard properties that begin at or after the
162 new end (Bug#5306).
163
164 * editfns.c (Fformat): Caller changed.
165
e5a29a10
CY
166 * nsterm.m (ns_set_default_prefs): Delete function.
167 (syms_of_nsterm): Initialize ns_command_modifier,
168 ns_control_modifier, ns_function_modifier, ns_antialias_text, and
169 ns_antialias_threshold here, not in ns_term_init (Bug#4113).
170
2f1c6384
CY
171 * xdisp.c (pos_visible_p): Check for invisible text at the correct
172 position (Bug#4040).
173
d427a9fa
EZ
1742010-01-09 Eli Zaretskii <eliz@gnu.org>
175
176 * editfns.c (Ffloat_time): Doc fix.
177
21b9df2f
JD
1782010-01-09 Jan Djärv <jan.h.d@swipnet.se>
179
180 * xfns.c (Fx_create_frame): Don't create frame larger than display
181 by default bug#3643.
182
4b00d3b1
YM
1832010-01-09 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
184
185 * frame.h (FRAME_TOP_MARGIN_HEIGHT): New macro.
186 (FRAME_LINE_TO_PIXEL_Y, FRAME_PIXEL_Y_TO_LINE): Take account of pseudo
187 windows above internal border.
188
189 * window.h (WINDOW_MENU_BAR_P, WINDOW_TOOL_BAR_P): New macros.
190 (WINDOW_TOP_EDGE_Y, WINDOW_BOTTOM_EDGE_Y): Take account of pseudo
191 windows above internal border.
192
193 * xdisp.c (get_glyph_string_clip_rects, init_glyph_string): Don't treat
194 tool bar windows specially.
195
196 * xfns.c (x_set_tool_bar_lines): Take account of menu bar height.
197
198 * xterm.c (x_after_update_window_line): Don't treat tool bar windows
199 specially.
200 (XTflash): Take account of menu bar height.
201
202 * w32term.c (x_after_update_window_line): Don't treat tool bar windows
203 specially.
204
5075d853
JD
2052010-01-08 Jan Djärv <jan.h.d@swipnet.se>
206
207 * dispnew.c (change_frame_size_1): newwidth == FRAME_COLS (f) must
208 also be true before we can return early (bug #5339).
209
474217c8
CY
2102010-01-06 David Reitter <david.reitter@gmail.com>
211
212 * nsfns.m (ns_get_screen): Rewrite, returning NULL for non-NS.
213 (Fns_display_usable_bounds): Rewrite, computing bounds properly
214 (Bug#3233).
215
c0e6d47d
JD
2162010-01-06 Jan Djärv <jan.h.d@swipnet.se>
217
d0cf45b7
JD
218 * font.c (font_open_entity): Enable chache and call cached_font_ok
219 for the driver if defined.
220 (QCuser_spec): New symbol.
221 (font_spec_from_name): Save name as user-spec.
222 (font_load_for_lface): Keep user-spec instead of name.
223 (font_open_by_name): Save name as user-spec.
224 (syms_of_font): Initialize QCuser_spec.
b7f8e4f5 225 (font_clear_prop): Clear name if it exists in font (bug#5157).
d0cf45b7
JD
226
227 * xftfont.c (xftfont_open): Call xftfont_add_rendering_parameters.
228 (xftfont_add_rendering_parameters, xftfont_cached_font_ok): New.
229 (syms_of_xftfont): Initialize xftfont_driver.cached_font_ok.
230
231 * font.h (struct font_driver): Add cached_font_ok.
232
c0e6d47d
JD
233 * xterm.c (x_clear_frame): Queue draw for scroll bars.
234
7c583cd8
JD
2352010-01-05 Jan Djärv <jan.h.d@swipnet.se>
236
237 * xterm.c (x_new_font): Move code for setting rows/cols before
238 resizing ...
239 (x_set_window_size): ... to here. bug #2568.
240
241 * gtkutil.c (xg_clear_under_internal_border): New function.
0b5397c2
SM
242 (xg_frame_resized, xg_frame_set_char_size):
243 Call xg_clear_under_internal_border.
7c583cd8 244 (xg_update_scrollbar_pos): Clear under old scroll bar position.
69e2f185 245
03f77f0a
CY
2462010-01-05 Chong Yidong <cyd@stupidchicken.com>
247
248 * keyboard.c (read_key_sequence): Catch keyboard switch after
249 making a new tty frame (Bug#5095).
250
2a1ef5be
KH
2512010-01-05 Kenichi Handa <handa@m17n.org>
252
253 * fontset.c (fontset_find_font): Fix getting the frame pointer.
254
e3eb1dae
SM
2552010-01-04 Stefan Monnier <monnier@iro.umontreal.ca>
256
257 * dbusbind.c (xd_remove_watch): Avoid trying to convert a void* to
258 Lisp_Object, preferring to convert a lisp_Object to a void* instead.
259 (Fdbus_init_bus): Use XHASH to get a scalar value from a Lisp_Object.
260
777013f2
MA
2612010-01-03 Michael Albinus <michael.albinus@gmx.de>
262
263 * dbusbind.c (xd_add_watch): Improve debug message.
264 (xd_remove_watch): Improve debug message. If DATA is the session
265 bus, unset D-Bus session environment.
266 (Fdbus_init_bus): Pass the bus as argument to
267 dbus_connection_set_watch_functions. (Bug#5283)
7c583cd8 268
8932b1c2
CY
2692010-01-01 Chong Yidong <cyd@stupidchicken.com>
270
87231e2c
CY
271 * nsterm.m (ns_get_color): Fix buffer overflow (Bug#4763).
272
4801c5fa
CY
273 * lread.c (syms_of_lread): Make it clearer that these are the
274 names of loaded files (Bug#5068).
275
8932b1c2
CY
276 * eval.c (run_hook_with_args): Handle the case where the global
277 value has the obsolete single-function form (Bug#5026).
278
11e3c684
CY
2792009-12-27 Chong Yidong <cyd@stupidchicken.com>
280
281 * minibuf.c (Fall_completions): Minor optimization.
282
5b28ce35
EZ
2832009-12-26 Eli Zaretskii <eliz@gnu.org>
284
5ce6e4f4
JB
285 * .gdbinit (pgx): Fix display of composite glyphs.
286 Display cmp.from and cmp.to as well.
287 (pitx): Fix last change.
5b28ce35 288
bcffff46
KH
2892009-12-25 Kenichi Handa <handa@m17n.org>
290
291 * composite.h (composition_adjust_point): Update prototype.
292
293 * composite.c (composition_reseat_it): Don't make a composition
294 spanning over point.
295 (CHAR_COMPOSABLE_P): Treat U+200C (ZWNJ) and U+200D (ZWJ) as
296 composable characters.
297 (composition_adjust_point): New arg NEW_PT. Callers changed.
298
299 * keyboard.c (command_loop_1): Force redisplay if the last point
300 was within a composition.
301 (adjust_point_for_property): Don't adjust point for automatic
302 composition when called after buffer modification.
303
3f670e9a
EZ
3042009-12-19 Eli Zaretskii <eliz@gnu.org>
305
5ce6e4f4
JB
306 * .gdbinit (pitx): Don't use enum names, use their values.
307 Remove reference to non-existing value GET_FROM_COMPOSITION.
be996d82
EZ
308 (pgx): Don't use enum names, use their values.
309 (pitmethod): New helper command.
310 (pitx): Use it to display iteration method.
311 (pgrowit): New command.
312
ad903955
EZ
313 * makefile.w32-in ($(BLD)/cmds.$(O)): Depend on frame.h.
314
3f670e9a
EZ
315 Update dependencies in Makefile.in.
316
317 * Makefile.in (alloc.o): Depend on termhooks.h.
318 (atimer.o): Depend on blockinput.h.
319 (buffer.o): Depend on indent.h, keyboard.h, coding.h, keymap.h,
320 and frame.h.
321 (callint.o): Depend on systime.h, coding.h, and composite.h.
322 (callproc.o): Depend on buffer.h.
323 (casefiddle.o): Don't depend on charset.h.
324 (casetab.o): Depend on character.h.
325 (ccl.o): Depend on composite.h.
326 (chartab.o): Depend on ccl.h.
327 (cm.o): Depend on dispextern.h.
328 (cmds.o): Depend on systime.h, coding.h, frame.h, and composite.h.
329 (coding.o): Don't depend on $(INTERVALS_H).
330 (composite.o): Don't depend on dispextern.h explicitly (it's in
331 $(INTERVALS_H)). Depend on ccl.h.
332 (data.o): Depend on systime.h, coding.h, composite.h,
333 dispextern.h, font.h, and ccl.h.
334 (dired.o): Depend on composite.h.
335 (dispnew.o): Depend on coding.h. Don't depend explicitly on
336 composite.h (it's in $(INTERVALS_H)).
337 (doc.o): Depend on systime.h, coding.h, and composite.h.
338 (editfns.o): Don't depend explicitly on dispextern.h.
339 (emacs.o): Depend on frame.h and coding.h.
340 (eval.o): Depend on coding.h, composite.h, and xterm.h.
341 (fileio.o): Depend on frame.h and commands.h. Don't depend
342 explicitly on dispextern.h.
343 (filelock.o): Don't depend on epaths.h and charset.h. Depend on
344 composite.h.
345 (fns.o): Don't depend on termhooks.h.
346 (font.o): Depend on buffer.h, composite.h, fontset.h, and xterm.h.
347 (fontset.o): Depend on blockinput.h, atimer.h, systime.h,
348 coding.h, $(INTERVALS_H), window.h, xterm.h.
349 (frame.o): Depend on coding.h, composite.h, termhooks.h, and ccl.h.
350 (fringe.o): Depend on blockinput.h, atimer.h, and systime.h.
351 (ftfont.o): Depend on blockinput.h, atimer.h, systime.h, coding.h,
352 fontset.h, ccl.h, and ftfont.h.
353 (ftxfont.o): Depend on atimer.h, systime.h, fontset.h, and ccl.h.
354 (gtkutil.o): Depend on dispextern.h and composite.h.
355 (image.o): Depend on epaths.h, character.h, coding.h, composite.h,
356 termhooks.h, and ccl.h.
357 (indent.o): Depend on systime.h, coding.h, and $(INTERVALS_H).
358 (intervals.o): Depend on systime.h and coding.h.
359 (keyboard.o): Depend on composite.h and coding.h.
360 (keymap.o): Depend on coding.h and frame.h.
361 (lread.o): Depend on systime.h, frame.h, blockinput.h, and atimer.h.
362 (macros.o): Depend on systime.h, coding.h, and composite.h.
363 (menu.o): Depend on systime.h, coding.h, composite.h, window.h,
364 and atimer.h.
365 (minibuf.o): Depend on systime.h and coding.h. Don't depend on
366 dispextern.h explicitly.
0b5397c2
SM
367 (print.o): Depend on termhooks.h, coding.h, and ccl.h.
368 Don't depend explicitly on dispextern.h and composite.h.
3f670e9a
EZ
369 (process.o): Depend on character.h, xgselect.h, and sysselect.h.
370 (regex.o): Don't depend on charset.h.
371 (scroll.o): Depend on systime.h, coding.h, composite.h, and window.h.
372 (search.o): Don't depend explicitly on composite.h.
373 (sound.o): Depend on atimer.h and systime.h.
374 (syntax.o): Don't depend explicitly on composite.h.
375 (sysdep.o): Depend on coding.h and composite.h.
376 (term.o): Depend on xterm.h and buffer.h.
377 (terminal.o): Depend on dispextern.h, composite.h, and systime.h.
378 (textprop.o): Don't depend on dispextern.h explicitly.
379 (undo.o): Depend on dispextern.h.
380 (window.o): Depend on coding.h and termhooks.h. Don't depend on
381 dispextern.h and composite.h explicitly.
382 (xdisp.o): Depend on ccl.h.
383 (xfaces.o): Depend on coding.h and ccl.h.
384 (xfns.o): Depend on $(INTERVALS_H) and ccl.h.
385 (xfont.o): Depend on atimer.h, systime.h, fontset.h, and ccl.h.
386 (xftfont.o): Depend on atimer.h, systime.h, fontset.h, ccl.h, and
387 ftfont.h.
388 (xgselect.o): New dependency.
389 (xmenu.o): Depend on composite.h, keymap.h, and sysselect.h.
390 (xselect.o): Depend on keyboard.h, coding.h, and composite.h.
391 (xsettings.o): Depend on dispextern.h, keyboard.h, systime.h,
392 coding.h, composite.h, blockinput.h, atimer.h, and termopts.h.
393 (xsmfns.o): Depend on frame.h and dispextern.h.
394 (xterm.o): Depend on intervals.h, keymap.h, xgselect.h, and
395 sysselect.h.
396
7a6f7fea
AS
3972009-12-19 Andreas Schwab <schwab@linux-m68k.org>
398
399 * font.c (Fclear_font_cache): Pass correct cache argument to
400 font_clear_cache.
401
f4c21026
AS
4022009-12-16 Andreas Schwab <schwab@linux-m68k.org>
403
404 * Makefile.in (prefix-args${EXEEXT}): Don't compile prefix-args.c
405 twice.
406
f7ab0997
CY
4072009-12-15 Chong Yidong <cyd@stupidchicken.com>
408
409 * xdisp.c (decode_mode_spec): Inhibit garbage collection when
410 calling file-remote-p. Reported by Jim Meyering.
411
fa8e045a
MA
4122009-12-15 Michael Albinus <michael.albinus@gmx.de>
413
414 * dbusbind.c (xd_retrieve_arg): Reorder declarations in order to
777013f2 415 avoid compiler warnings. (Bug #5217)
fa8e045a 416
a63dba42
KH
4172009-12-14 Kenichi Handa <handa@m17n.org>
418
419 * coding.c (decode_coding_iso_2022): Ignore ISO_CODE_SS2_7 (0x19)
420 in 8-bit encoding.
421
5ce6e4f4 4222009-12-13 Pat Thoyts <patthoyts@users.sourceforge.net> (tiny change)
36acb2a7
JD
423
424 * xfns.c (x_create_tip_frame): Set the extended window manager hint for
425 tooltip windows.
426
223e5fc6
JD
4272009-12-13 Jan Djärv <jan.h.d@swipnet.se>
428
36acb2a7
JD
429 * xterm.h (struct x_display_info): Add Xatom_net_window_type_tooltip and
430 Xatom_net_window_type.
431
432 * xterm.c (x_term_init): Initialize Xatom_net_window_type_tooltip and
433 Xatom_net_window_type.
434
b8f00677
JD
435 * xterm.c (my_log_handler): New function.
436 (x_term_init): Set my_log_handler as log handler during gtk_init
5ce6e4f4 437 so we can filter out buggy messages. (Bug #5120).
b8f00677 438
e5f0bc9a
JD
439 * xterm.c (xg_scroll_callback): Parameter list changed,
440 use parameter GtkScrollType to determine scroll/line/page.
441 Only allow dragging if a button < 4 is grabbed (bug #5177).
442 (xg_end_scroll_callback): New function.
443 (x_create_toolkit_scroll_bar): Pass xg_end_scroll_callback to
444 xg_create_scroll_bar.
445
446 * gtkutil.c (xg_gtk_scroll_destroy): Remove XG_LAST_SB_DATA handling.
447 (scroll_end_callback): Remove.
448 (xg_create_scroll_bar): Add parameter end_callback, bind it to
449 button-release-event. Replace value-changed event with change-value,
450 bug #5177,
451 (xg_event_is_for_scrollbar): Only return true if button is less than 4,
452 bug #5177.
453
454 * gtkutil.h (XG_LAST_SB_DATA): Remove.
455 (xg_create_scroll_bar): Add GCallback end_callback.
456
223e5fc6
JD
457 * xftfont.c (QClcdfilter): New variable.
458 (xftfont_open): Parse constant names for RGBA, HINT_STYLE and LCDFILTER.
459 (syms_of_xftfont): Initialize QClcdfilter.
460
3c055b77
JD
4612009-12-12 Jan Djärv <jan.h.d@swipnet.se>
462
463 * xsettings.c (struct xsettings): Add member seen.
464 (parse_xft_settings): Update member seen with what we have read.
ba68c0b0 465 Return non-zero if Xft-settings have been parsed, 0 otherwise.
3c055b77
JD
466 (apply_xft_settings): Only update Xft settings with what member seen
467 indicates as new.
468
05fe33ff
EZ
4692009-12-12 Eli Zaretskii <eliz@gnu.org>
470
471 * dispextern.h (struct text_pos): Use EMACS_INT;
472 (struct glyph): Use EMACS_INT for charpos.
473 (struct it): Use EMACS_INT for stop_charpos, end_charpos,
474 region_beg_charpos, region_end_charpos,
475 redisplay_end_trigger_charpos, and also for
476 iterator_stack_entry.end_charpos and
477 iterator_stack_entry.stop_charpos.
478
e8d7886a
JD
4792009-12-12 Jan Djärv <jan.h.d@swipnet.se>
480
5ce6e4f4 481 * gtkutil.c (scroll_end_callback): New function (bug #5177).
e8d7886a
JD
482 (xg_create_scroll_bar): Call scroll_end_callback on button release
483 event (bug #5177).
484 (xg_event_is_for_scrollbar): != replaced with ==.
485
d0db2ec8
KH
4862009-12-12 Kenichi Handa <handa@m17n.org>
487
488 * ftfont.c (struct ftfont_info): New member matrix.
489 (ftfont_open): Setup xftfont_info->matrix.
490 (MFLTFontFT): New member matrix.
491 (FLOOR, CEIL, ROUND): New macros.
492 (ftfont_get_metrics): Handle matrix transformation.
493 (ftfont_shape_by_flt): New arg matrix. Callers changed.
494
495 * xftfont.c (struct xftfont_info): New member matrix.
496 (xftfont_open): Setup xftfont_info->matrix.
497
4982009-12-10 Kenichi Handa <handa@m17n.org>
499
500 * xdisp.c (append_space_for_newline): Consider face-remapping.
501
2cc7b62f
AS
5022009-12-09 Andreas Schwab <schwab@linux-m68k.org>
503
b87dd913
AS
504 * xsettings.c: Include "keyboard.h".
505
eba5eb94
AS
506 * gtkutil.c (xg_tool_bar_proxy_help_callback): Fix missing return.
507
2cc7b62f
AS
508 Fix implicit function declarations.
509 * cmds.c: Include "frame.h".
510 * frame.c: Include "font.h" also if !HAVE_WINDOW_SYSTEM.
511 * frame.h: Move declaration of delete_frame outside of
512 HAVE_WINDOW_SYSTEM.
513
a4ef73c8
CY
5142009-12-09 Ken Brown <kbrown@cornell.edu> (tiny change)
515
516 * s/cygwin.h (G_SLICE_ALWAYS_MALLOC): New variable.
517
518 * emacs.c (main): Set the G_SLICE environment variable for Cygwin
519 GTK builds.
520
944a300c
AS
5212009-12-07 Andreas Schwab <schwab@linux-m68k.org>
522
523 * unexelf.c (unexec): Don't search for .data twice.
524
022eef62
CY
5252009-12-05 Chong Yidong <cyd@stupidchicken.com>
526
426ac949
CY
527 * xdisp.c (push_display_prop): Don't set avoid_cursor_p. Return 0
528 if push failed.
529 (handle_line_prefix): Set avoid_cursor_p here. Check return value
530 of push_display_prop (Bug#5000).
531
022eef62
CY
532 * xfaces.c (Fx_family_fonts): Handle 2009-07-14 change to return
533 value of font_list_entities (Bug#5085).
534
be95bee9
JB
5352009-12-04 Juanma Barranquero <lekktu@gmail.com>
536
537 Fix `string-to-number' to deal consistently with integers and floats.
538 * lread.c (isfloat_string): New argument ignore_trailing to accept all
539 trailing characters, not just whitespace.
540 (read1): Pass new arg 0 to keep old behavior.
541 * data.c (Fstring_to_number): Pass 1 to isfloat_string to ignore
542 trailing chars, as it is already done for integers. Doc fixes.
543 * lisp.h (isfloat_string): Add new arg to declaration of isfloat_string.
544
24c2d7ce
EZ
5452009-12-04 Eli Zaretskii <eliz@gnu.org>
546
0b5397c2
SM
547 * dispextern.h (enum prop_idx) <AUTO_COMPOSED_PROP_IDX>:
548 Delete unused enumeration value.
24c2d7ce 549
7e694795
EZ
5502009-12-03 Eli Zaretskii <eliz@gnu.org>
551
552 * Makefile.in (lisp, shortlisp): Replace indian.el with indian.elc.
553
84b31826
SM
5542009-12-03 Daniel Hackney <dan@haxney.org> (tiny change)
555
556 * process.c (Fmake_network_process): Fix up the tests for
557 "connectionless socket", so they DTRT for seqpacket sockets as well.
558
f00c449b
SM
5592009-12-03 Stefan Monnier <monnier@iro.umontreal.ca>
560
561 * process.c (Qseqpacket): New symbol.
562 (HAVE_SEQPACKET): New macro.
563 (Fmake_network_process): Accept new :type `seqpacket'.
564 (init_process): Add `seqpacket' feature when applicable.
565 (syms_of_process): Initialize Qseqpacket.
566
8096a0ff
YM
5672009-12-01 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
568
569 * font.c (font_load_for_lface, font_open_by_name): Don't store name
570 if entity is Qnil.
571
3e0de07f
SM
5722009-11-30 Stefan Monnier <monnier@iro.umontreal.ca>
573
574 * print.c (print_preprocess): Preprocess the key_and_value table of
575 hashtables, even tho they're "hidden" (bug#5082).
576
abeafb2a
JD
5772009-11-29 Jan Djärv <jan.h.d@swipnet.se>
578
579 * frame.c (frame_make_pointer_invisible)
580 (frame_make_pointer_visible): Declare f before statements.
581
4bf47195
EZ
5822009-11-28 Eli Zaretskii <eliz@gnu.org>
583
584 * Makefile.in [!AUTO_DEPEND]: Remove outdated comment about
585 omitted dependencies on lisp.h.
586
c525b3f2
JD
5872009-11-27 Jan Djärv <jan.h.d@swipnet.se>
588
ece2d4ed
JD
589 * xftfont.c (xftfont_end_for_frame): Just return if dpyinfo->display
590 is NULL.
591
592 * xterm.c (x_delete_terminal): Set dpyinfo->display to NULL.
593
594 * frame.c (frame_make_pointer_invisible)
3e0de07f 595 (frame_make_pointer_visible): Just return if there isn't any selected
ece2d4ed
JD
596 frame.
597
c525b3f2
JD
598 * search.c (simple_search): Remove warning by making *p const.
599
2f00e299
DN
6002009-11-26 Dan Nicolaescu <dann@ics.uci.edu>
601
602 * xdisp.c (power_letter): Remove duplicate const.
603
084b049b
JD
6042009-11-25 Jan Djärv <jan.h.d@swipnet.se>
605
a1fadc6f
JD
606 * term.c (delete_tty): Remove check for last terminal (bug#4970).
607
5ce6e4f4 608 * xsettings.c: Revert changes from 2009-11-23. Just use Xft
084b049b
JD
609 defaults (bug #5025).
610
28259cac
SM
6112009-11-24 Stefan Monnier <monnier@iro.umontreal.ca>
612
613 * insdel.c (adjust_markers_for_delete): Move it in the
614 right direction! (bug#4803)
615
e8e14166
YM
6162009-11-24 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
617
618 * font.c (font_open_entity): Don't use ASET if font_object is Qnil.
619
620 * xterm.c (x_new_font): Update f->scroll_bar_actual_width.
621
86677b58
GM
6222009-11-24 Glenn Morris <rgm@gnu.org>
623
624 * frame.c (focus-follows-mouse): Mention mouse-autoselect-window.
625
581e51e8
JD
6262009-11-23 Jan Djärv <jan.h.d@swipnet.se>
627
cfc86c7a
JD
628 * Makefile.in: Must create deps for ecrt0.o in its rule.
629
581e51e8
JD
630 * xfns.c (Fx_select_font): Try to convert Fontconfig name to Gtk name
631 because that is what Gtk+ font dialog understands.
632
633 * font.c (font_make_object, Fcopy_font_spec): Use Fcopy_alist instead
634 of Fcopy_sequence.
635 (font_open_by_name): Put name given into QCname for font-object returned.
636
637 * frame.c (x_set_font): Save original font name as frame parameter
638 font-parameter.
639
640 * xsettings.c (set_default_xft_settings): New function.
641 (init_xfd_settings): Call set_default_xft_settings if no XSETTINGS window
642 is found.
643
8b264ecb
AS
6442009-11-22 Andreas Schwab <schwab@linux-m68k.org>
645
646 * search.c (simple_search): Avoid CHAR_TO_BYTE in inner loop when
647 searching backwards through multibyte buffer.
648
872870b2
JD
6492009-11-21 Jan Djärv <jan.h.d@swipnet.se>
650
651 * xterm.c: #include xgselect.h.
652 (x_initialize): Call xgselect_initialize.
653
654 * xsettings.c (something_changedCB): C++ comments => C comments.
655 (init_gconf): Do not deal with any GLib file descriptors, xg_select
656 does that now.
657
658 * gtkutil.c (xg_timer, xg_process_timeouts, xg_start_timer)
659 (xg_stop_timer, menu_grab_callback_cnt, menu_grab_callback)
660 (scroll_bar_button_cb): Remove.
5ce6e4f4 661 (create_menus): C++ comments => C comments. Don't bind grab-notify
872870b2
JD
662 event.
663 (xg_create_scroll_bar): Don't bind button-press-event and
664 button-release-event.
665
666 * process.c: Include xgselect.h if defined (USE_GTK) ||
667 defined (HAVE_GCONF).
668 (wait_reading_process_output): Call xg_select for the same condition.
669
670 * xgselect.c (xg_select): New function to better integrate with
671 GLib/Gtk event handling. Needed if GConf daemon dies/restarts.
672
673 * xgselect.h: New file, declare xg_select, xgselect_initialize.
674
675 * Makefile.in (XOBJ): Add xgselect.o.
676
62a6e103
AS
6772009-11-21 Andreas Schwab <schwab@linux-m68k.org>
678
0b5397c2
SM
679 * character.h (STRING_CHAR, STRING_CHAR_AND_LENGTH):
680 Remove ignored second argument. All callers changed.
62a6e103
AS
681 * regex.c (STRING_CHAR, STRING_CHAR_AND_LENGTH, RE_STRING_CHAR)
682 (RE_STRING_CHAR_AND_LENGTH): Likewise.
683 * xdisp.c (string_char_and_length): Likewise.
684
b0ca0f33
DN
6852009-11-21 Dan Nicolaescu <dann@ics.uci.edu>
686
687 * xterm.c (x_new_font):
688 * print.c (print_object):
689 * cmds.c (Fself_insert_command): Move declarations before statements.
690
dd5a6279
CY
6912009-11-20 Ken Brown <kbrown@cornell.edu> (tiny change)
692
693 * s/cygwin.h: Remove unneeded linker flags.
694
4a8e097d
JD
6952009-11-20 Jan Djärv <jan.h.d@swipnet.se>
696
0d1d0d26
JD
697 * xfns.c (x_default_font_parameter): Call xsettings_get_system_font.
698
699 * xsettings.h: Declare xsettings_get_system_font.
700
701 * xsettings.c (xsettings_get_system_font): New function.
702 (init_gconf): No use initiating gconf unless we have Xft also.
703 (syms_of_xsettings): Only provide system-font-setting if HAVE_XFT and
704 HAVE_GCONF.
705
4a8e097d
JD
706 * gtkutil.c (xg_modify_menubar_widgets): If menubar is totally empty
707 add a blank entry so it doesn't collapse into nothing.
708
8ab1650e
SM
7092009-11-19 Stefan Monnier <monnier@iro.umontreal.ca>
710
711 * lread.c (Funintern): Comment out last change.
712
82c602f0
RS
7132009-11-19 Richard Stallman <rms@gnu.org>
714
715 * lread.c (Funintern): Error if symbol is t or nil.
716
87e32266
SM
7172009-11-19 Stefan Monnier <monnier@iro.umontreal.ca>
718
719 * insdel.c (make_gap_larger): Don't make as many assumptions about the
720 representation of Lisp integers.
721 Reported by MJ Chan <mjchan.inbox@gmail.com>.
722
1b9ac145
AS
7232009-11-17 Andreas Schwab <schwab@linux-m68k.org>
724
725 * lisp.h: Remove declaration of Ffont_get_system_font.
726 * xfns.c: Move include of "xsettings.h".
727 * xsettings.h: Use EXFUN to declare Ffont_get_system_font.
728
dfb3c4c6
JD
7292009-11-17 Jan Djärv <jan.h.d@swipnet.se>
730
87e32266
SM
731 * xsettings.c (something_changedCB, Ffont_get_system_font):
732 Check use_system_font.
dfb3c4c6
JD
733 (syms_of_xsettings): DEFVAR font-use-system-font.
734
9370c1d8
AS
7352009-11-17 Andreas Schwab <schwab@linux-m68k.org>
736
25fe851a
AS
737 * xfns.c (x_default_font_parameter): Remove dead assignment.
738
9370c1d8
AS
739 * lisp.h (Fbyteorder, init_font, Ffont_get_system_font): Declare.
740
637fa988
JD
7412009-11-17 Jan Djärv <jan.h.d@swipnet.se>
742
87e32266 743 * xftfont.c (xftfont_fix_match): Older versions of fontconfig do
21050de1 744 not have FC_LCD_*. #define them if not there.
a6eb20d8 745
87e32266 746 * xsettings.c (parse_xft_settings, apply_xft_settings): Ditto.
a6eb20d8 747
637fa988
JD
748 * xterm.h (struct x_display_info): Add atoms and Window for xsettings.
749
750 * xterm.c (handle_one_xevent): Call xft_settings_event for
751 ClientMessage, PropertyNotify and DestroyNotify.
752 (x_term_init): If we have XFT, get DPI from Xft.dpi.
753 Call xsettings_initialize.
754
755 * xftfont.c (xftfont_fix_match): New function.
756 (xftfont_open): Call XftDefaultSubstitute before XftFontMatch.
757 Call xftfont_fix_match after XftFontMatch.
758
759 * xfont.c (xfont_driver): Initialize all members.
760
87e32266
SM
761 * xfns.c (x_default_font_parameter):
762 Try font from Ffont_get_system_font.
637fa988
JD
763 Do not get font from x_default_parameter if we got one from
764 Ffont_get_system_font.
87e32266 765 (Fx_select_font): Get the defaut font name from :name of FRAME_FONT(f).
637fa988
JD
766
767 * w32font.c (w32font_driver): Initialize all members.
768
769 * termhooks.h (enum event_kind): CONFIG_CHANGED_EVENT is new.
770
771 * lisp.h: Declare syms_of_xsettings.
772
87e32266
SM
773 * keyboard.c (kbd_buffer_get_event, make_lispy_event):
774 Handle CONFIG_CHANGED_EVENT.
637fa988
JD
775
776 * ftfont.c (ftfont_filter_properties): New function.
777
778 * frame.c (x_set_font): Remove unused variable lval.
779
87e32266 780 * font.h (struct font_driver): Add filter_properties.
637fa988
JD
781
782 * font.c (font_put_extra): Don't return if val is nil, it means
783 boolean option is off.
784 (font_parse_fcname): Collect all extra properties in extra_props
785 and call filter_properties for all drivers with extra_props and
786 font as parameter.
87e32266
SM
787 (font_open_entity): Do not use cache, it does not pick up new
788 fontconfig settings like hinting.
637fa988
JD
789 (font_load_for_lface): If spec had a name in it, store it in entity.
790
791 * emacs.c (main): Call syms_of_xsettings
792
793 * config.in: HAVE_GCONF is new.
794
795 * Makefile.in (GCONF_CFLAGS, GCONF_LIBS): New variables for HAVE_GCONF.
796 xsettings.o is new.
797
5a942932
KH
7982009-11-17 Kenichi Handa <handa@m17n.org>
799
800 * xdisp.c (x_produce_glyphs): Consider face-remapping when falling
801 back to the default font in case that no suitable font is found.
802
b7c7a4d1
SM
8032009-11-17 Stefan Monnier <monnier@iro.umontreal.ca>
804
805 * menu.c (Fx_popup_menu) [HAVE_NS]: Use generic code for window edge.
806 Suggested by Chad Brown <yandros@mit.edu>.
807 (push_menu_item): Use MENU_ITEMS_ITEM_* names.
808
072f1e39
JD
8092009-11-16 Jan Djärv <jan.h.d@swipnet.se>
810
811 * xmenu.c (x_menu_wait_for_event): Call XFlush before select.
812
5d1e70a2
AS
8132009-11-14 Andreas Schwab <schwab@linux-m68k.org>
814
87e32266 815 * Makefile.in: Ignore errors from mkdir when creating deps directory.
5d1e70a2 816
a53cfbe5
JD
8172009-11-14 Jan Djärv <jan.h.d@swipnet.se>
818
473a99b7
JD
819 * gtkutil.c (xg_update_frame_menubar): Do nothing if menubar already
820 has a parent.
821
a53cfbe5 822 * Makefile.in: If AUTO_DEPEND is defined, make gcc generate
5ce6e4f4 823 dependency files in deps/. Include those files into Makefile.
a53cfbe5
JD
824
825 * config.in: Generated (AUTO_DEPEND).
826
f04bb9b2
MA
8272009-11-13 Michael Albinus <michael.albinus@gmx.de>
828
b7c7a4d1 829 * dbusbind.c (Vdbus_registered_objects_table): Rename from
f04bb9b2
MA
830 Vdbus_registered_functions_table, because it contains also
831 properties. Fix docstring.
b7c7a4d1 832 (Fdbus_call_method, Fdbus_call_method_asynchronously): Fix docstring.
f04bb9b2 833
8f11f7ec
SM
8342009-11-13 Stefan Monnier <monnier@iro.umontreal.ca>
835
836 * alloc.c (mark_object): Don't reprocess marked strings.
837 Check vector's markbit earlier. Adjust calls to mark_vectorlike.
838 (mark_vectorlike, mark_char_table): Assume the object is unmarked.
839
8a605fe8
KH
8402009-11-13 Kenichi Handa <handa@m17n.org>
841
8f11f7ec 842 * category.c (word_boundary_p): Adjust for the change of the
8a605fe8
KH
843 semantics of Vword_combining_categories.
844 (Vword_combining_categories): Describe the slight change of the
845 semantics.
846
241c4680
EZ
8472009-11-13 Eli Zaretskii <eliz@gnu.org>
848
849 * menu.c (Fx_popup_menu): Call Fx_hide_tip only if HAVE_WINDOW_SYSTEM.
850
851 * s/msdos.h (SYSTEM_PURESIZE_EXTRA): Revert last change.
852
5d58e44c
SM
8532009-11-12 Stefan Monnier <monnier@iro.umontreal.ca>
854
855 * xdisp.c (syms_of_xdisp): Fix typo in last change.
856
5e13f9d3
JB
8572009-11-12 Juanma Barranquero <lekktu@gmail.com>
858
859 * makefile.w32-in: Update dependencies; add dependencies to lisp.h.
860
cf54c754
DR
8612009-11-11 David Reitter <david.reitter@gmail.com>
862
863 * menu.c (Fx_popup_menu): Remove left-over debugging code and rename
864 variables to fix 2009-11-09 change.
865
a4ada374
DN
8662009-11-11 Dan Nicolaescu <dann@ics.uci.edu>
867
91433552
DN
868 * process.c (ifflag_def): Make flag_sym constant.
869 (Fnetwork_interface_info): Use a constant pointer.
870 (ifflag_table):
871 * xfns.c (cursor_bits):
872 * xdisp.c (power_letter):
873 * termcap.c (speeds, esctab):
874 * sysdep.c (baud_convert):
875 * keyboard.c (lispy_accent_codes, modifier_names):
876 * image.c (xbm_format, xpm_format, pbm_format, png_format)
877 (jpeg_format, tiff_format, gif_format, svg_format)
878 (interlace_start, interlace_increment, gs_format):
879 * gtkutil.c (separator_names):
880 * fringe.c (swap_nibble):
881 * fns.c (base64_value_to_char, base64_char_to_value):
882 * fileio.c (make_temp_name_tbl):
883 * coding.c (suffixes): Make constant.
884
f4265f6c
DN
885 * frame.c (make_initial_frame):
886 * buffer.c (init_buffer_once): Use make_pure_c_string instead of
887 build_string.
888 * alloc.c (syms_of_alloc): Build Vmemory_signal_data in pure memory.
889
04420943
DN
890 * s/freebsd.h:
891 * s/netbsd.h: Remove code referring to non-existent file: unexsunos4.o.
892
0a5d24ae
DN
893 * Makefile.in: Add dependencies to lisp.h. Remove dependencies
894 for non-existent files: unexmips.c, unexnext.c, abbrev.c, malloc.c.
895
a4ada374
DN
896 * xfns.c (syms_of_xfns): Use make_pure_string instead of build_string.
897 * xterm.c (syms_of_xterm):
898 * xfaces.c (syms_of_xfaces):
899 * xdisp.c (syms_of_xdisp):
900 * lread.c (syms_of_lread):
901 * keyboard.c (syms_of_keyboard): Use make_pure_c_string instead of
902 build_string.
91433552 903
a4ada374
DN
904 * doc.c (Fsnarf_documentation): Purecopy Vbuild_files.
905
af98fc7f
SM
9062009-11-10 Stefan Monnier <monnier@iro.umontreal.ca>
907
8ab1650e 908 * fns.c (Fplist_get): Merge the active and the commented out code.
af98fc7f 909
e90292a9
JD
9102009-11-10 Jan Djärv <jan.h.d@swipnet.se>
911
912 * keyboard.h: Declare timer_check.
913
914 * keyboard.c (timer_check_2): New function that does what the old
915 timer_check did.
916 (timer_check): Call timer_check_2 until -1 or a non-zero time is
917 returned, i.e. don't return -1 with timers pending.
918
919 * process.c: Remove extern declaration of timer_check.
920
921 * xmenu.c (x_menu_wait_for_event): Remove code that did a timeout
922 even if timer_check returned -1.
923
af98fc7f
SM
924 * gtkutil.c (xg_dialog_response_cb): Data is now a struct
925 xg_dialog_data.
e90292a9
JD
926 (pop_down_dialog): Destroy widget (if any), cancel timer and unref
927 the event loop.
928 (xg_maybe_add_timer, xg_dialog_run): New functions (bug #4574).
929 (xg_get_file_name, xg_get_font_name): Call xg_dialog_run (bug #4574).
930 Destroy the dialog after xg_dialog_run.
931
045b83c0
SM
9322009-11-10 Stefan Monnier <monnier@iro.umontreal.ca>
933
934 * menu.c (Fx_popup_menu) [HAVE_NS]: Remove unused vars.
935
1fb99a3a
JD
9362009-11-10 Jan Djärv <jan.h.d@swipnet.se>
937
938 * xmenu.c (xmenu_show): Must not be static after 2009-11-09 changes.
939
04e452cb
JB
9402009-11-09 Juanma Barranquero <lekktu@gmail.com>
941
942 * menu.c [HAVE_NTGUI]: Declare current_popup_menu.
943
ef7417fd
SM
9442009-11-09 Stefan Monnier <monnier@iro.umontreal.ca>
945
946 * menu.c (Fx_popup_menu): Consolidate versions from xmenu.c,
947 w32menu.c, and nsmenu.m.
948 Simplify the obsolete case where position is nil.
949 (cleanup_popup_menu): New function, moved from nsmenu.m.
950 (struct skp): Remove slot `notreal'.
951 (single_keymap_panes, keymap_panes): Remove arg `notreal' and
952 adjust callers.
953 (single_menu_item): Adjust call to parse_menu_item.
954 (syms_of_menu): Defsubr x-popup-menu.
955 * menu.h (Vmenu_updating_frame): Consolidate declarations from *menu.c.
956 (keymap_panes): Don't export any more.
957 (mouse_position_for_popup, w32_menu_show, ns_menu_show)
958 (xmenu_show): Declare.
959 * keyboard.c (parse_menu_item): Remove arg `notreal'.
960 (menu_bar_item, read_char_minibuf_menu_prompt): Adjust callers.
961 * keyboard.h (parse_menu_item): Update declaration.
962 * xmenu.c (Fx_popup_menu): Remove.
963 (syms_of_xmenu): Don't defsubr x-popup-menu.
964 * w32menu.c (Fx_popup_menu): Remove.
965 (syms_of_w32menu): Don't defsubr x-popup-menu.
966 * nsmenu.m (cleanup_popup_menu): Remove.
967 (ns_menu_show): Rename from ns_popup_menu and remove all the code
968 moved to menu.c's Fx_popup_menu.
969 (Fx_popup_menu): Remove.
970 (syms_of_nsmenu): Don't defsubr x-popup-menu, and don't initialize
971 menu_items (it's done in menu.c already).
972
424d6179
SM
9732009-11-08 Stefan Monnier <monnier@iro.umontreal.ca>
974
975 * keyboard.c (parse_menu_item): Handle `notreal' a bit earlier.
976 Use `tem' less. Make sure KEYEQ holds a string or nil (bug#4879).
977
c0df13a6 9782009-11-08 Chong Yidong <cyd@stupidchicken.com>
a20903d0
CY
979
980 * xmenu.c (Fx_popup_menu): Extract event timestamp. Pass it to
c0df13a6 981 xmenu_show. Hide any tooltip before opening a menu.
a20903d0
CY
982 (xmenu_show): New arg. Pass it to create_and_show_popup_menu.
983 (create_and_show_popup_menu): New arg. Pass it to gtk_menu_popup.
984
2de9f71c
SM
9852009-11-06 Stefan Monnier <monnier@iro.umontreal.ca>
986
987 Let integers use up 2 tags to give them one extra bit and thus double
988 their range.
989 * lisp.h (USE_2_TAGS_FOR_INTS): New macro.
990 (LISP_INT_TAG, case_Lisp_Int, LISP_STRING_TAG, LISP_INT_TAG_P):
991 New macros.
992 (enum Lisp_Type): Use them. Give explicit values.
993 (Lisp_Type_Limit): Remove.
994 (XINT, XUINT, make_number) [!USE_LISP_UNION_TYPE]:
995 (MOST_NEGATIVE_FIXNUM, MOST_POSITIVE_FIXNUM, INTMASK):
996 Pay attention to USE_2_TAGS_FOR_INTS.
997 (INTEGERP): Use LISP_INT_TAG_P.
998 * fns.c (internal_equal): Simplify the default case.
999 (sxhash): Use case_Lisp_Int.
1000 * data.c (wrong_type_argument): Don't check against Lisp_Type_Limit
1001 any more.
1002 (Ftype_of): Use case_Lisp_Int.
1003 (store_symval_forwarding): Take into account the fact that Ints can
1004 now have more than one tag.
1005 * buffer.c (syms_of_buffer): Use LISP_INT_TAG.
1006 buffer_slot_type_mismatch):
1007 * xfaces.c (face_attr_equal_p):
1008 * print.c (print_object):
1009 * alloc.c (mark_maybe_object, mark_object, survives_gc_p):
1010 Use case_Lisp_Int.
1011
323637a2
EZ
10122009-11-06 Eli Zaretskii <eliz@gnu.org>
1013
7ac65b38
EZ
1014 * s/msdos.h (SYSTEM_PURESIZE_EXTRA): Reduce by further 30K.
1015
323637a2
EZ
1016 * alloc.c (make_pure_c_string): Fix last change to avoid compiler
1017 warning.
1018
e511451f
JD
10192009-11-06 Jan Djärv <jan.h.d@swipnet.se>
1020
1021 * gtkutil.c (xg_event_is_for_scrollbar): New function (bug#4870).
1022
1023 * gtkutil.h: Declare xg_event_is_for_scrollbar (bug#4870).
1024
1025 * xterm.c (handle_one_xevent): Call xg_event_is_for_scrollbar for
1026 ButtonPressRelease and MotionNotify (bug#4870).
1027
5e2327cf
DN
10282009-11-06 Dan Nicolaescu <dann@ics.uci.edu>
1029
5adc433e
DN
1030 * keymap.c (syms_of_keymap): Construct exclude_keys in pure memory.
1031
d67b4f80
DN
1032 * xterm.c (syms_of_xterm):
1033 * xselect.c (syms_of_xselect):
1034 * xmenu.c (syms_of_xmenu):
1035 * xfns.c (syms_of_xfns):
1036 * xfaces.c (syms_of_xfaces):
1037 * xdisp.c (syms_of_xdisp):
1038 * window.c (syms_of_window):
1039 * w32fns.c (syms_of_w32fns):
1040 * undo.c (syms_of_undo):
1041 * textprop.c (syms_of_textprop):
1042 * terminal.c (syms_of_terminal):
1043 * syntax.c (syms_of_syntax):
1044 * sound.c (syms_of_sound):
1045 * search.c (syms_of_search):
1046 * print.c (syms_of_print):
1047 * minibuf.c (syms_of_minibuf):
1048 * macros.c (syms_of_macros):
1049 * keymap.c (syms_of_keymap, initial_define_key)
1050 (initial_define_lispy_key):
1051 * keyboard.c (syms_of_keyboard):
1052 * insdel.c (syms_of_insdel):
1053 * image.c (syms_of_image):
1054 * fringe.c (syms_of_fringe):
1055 * frame.c (syms_of_frame):
1056 * fontset.c (syms_of_fontset):
1057 * fns.c (syms_of_fns):
1058 * fns.c (syms_of_fns):
1059 * fileio.c (syms_of_fileio):
1060 * fileio.c (syms_of_fileio):
1061 * eval.c (syms_of_eval):
1062 * doc.c (syms_of_doc):
1063 * dispnew.c (syms_of_display):
1064 * dired.c (syms_of_dired):
1065 * dbusbind.c (syms_of_dbusbind):
1066 * data.c (syms_of_data):
1067 * composite.c (syms_of_composite):
1068 * coding.c (syms_of_coding):
1069 * cmds.c (syms_of_cmds):
1070 * charset.c (define_charset_internal, syms_of_character):
1071 * ccl.c (syms_of_ccl):
1072 * category.c (syms_of_category, init_category_once):
1073 * casetab.c (syms_of_casetab):
1074 * casefiddle.c (syms_of_casefiddle):
1075 * callint.c (syms_of_callint):
1076 * bytecode.c (syms_of_bytecode):
1077 * buffer.c (keys_of_buffer, syms_of_buffer):
1078 * alloc.c (syms_of_alloc):
1079 * process.c (syms_of_process, init_process):
1080 * lread.c (syms_of_lread, init_obarray):
1081 * font.c (build_style_table):
1082 * emacs.c (syms_of_emacs, main): Replace calls to intern with
1083 intern_c_string, calls to make_pure_string with
1084 make_pure_c_string. Use pure_cons instead of Fcons.
1085
5e2327cf
DN
1086 * process.c (socket_options): Make it const.
1087 (set_socket_option, init_process): Use a const pointer.
1088
1089 * lread.c (intern_c_string): New function.
1090 (defvar_kboard, defvar_lisp, defvar_lisp_nopro, defvar_bool)
1091 (defvar_int): Uset it. Make the name const char*.
1092
1093 * lisp.h (defvar_kboard, defvar_lisp, defvar_lisp_nopro, defvar_bool)
1094 (defvar_int): Update prototypes.
1095 (DEFUN, EXFUN): Support for prototypes is now required.
1096 (intern_c_string): New prototype.
1097 (struct Lisp_Subr): Make symbol_name constant.
1098
1099 * font.c (struct table_entry): Remove unused member. Make NAMES
1100 constant.
1101 (weight_table, slant_table, width_table): Make constant.
1102
1103 * emacs.c (struct standard_args): Make name and longname constant.
1104
1105 * character.h (DEFSYM): Use intern_c_string.
1106
a56eaaef
DN
11072009-11-06 Stefan Monnier <monnier@iro.umontreal.ca>
1108
1109 * alloc.c (make_pure_c_string): New function.
1110
1111 * eval.c (Fautoload): Purecopy all arguments.
1112
f6a07420
KH
11132009-11-05 Kenichi Handa <handa@m17n.org>
1114
1115 * fileio.c (Finsert_file_contents): Be sure set coding-system of
1116 the buffer in case of replace.
1117
5d28d4b1
DN
11182009-11-04 Dan Nicolaescu <dann@ics.uci.edu>
1119
1120 * puresize.h (BASE_PURESIZE): Increase to 1620000.
1121
b349d111
SM
11222009-11-03 Stefan Monnier <monnier@iro.umontreal.ca>
1123
d528b1ce
SM
1124 * editfns.c (save_restriction_restore): Update the (pt/begv/vz)_markers
1125 when applicable (bug#4851).
1126
b349d111
SM
1127 * lisp.h: Make USE_LSB_TAG work with USE_LISP_UNION_TYPE.
1128 (P_): Support for prototypes is now required.
1129
c38eb027
CY
11302009-10-31 Chong Yidong <cyd@stupidchicken.com>
1131
1132 * frame.c (Fmake_frame_invisible, Fframe_visible_p): Doc fix
1133 (Bug#4827).
1134
0405f8d9
EZ
11352009-10-30 Eli Zaretskii <eliz@gnu.org>
1136
d528b1ce 1137 * s/msdos.h (SYSTEM_PURESIZE_EXTRA): Redefine to waste less pure space.
0405f8d9 1138
ca0a881a
DN
11392009-10-30 Dan Nicolaescu <dann@ics.uci.edu>
1140
1141 * puresize.h (BASE_PURESIZE): Increase to 1470000.
1142
d528b1ce
SM
1143 * lread.c (Fload): Purecopy the file name when building
1144 Vpreloaded_file_list.
ca0a881a 1145
47e0e0e4
JR
11462009-10-29 Jason Rumney <jasonr@wanchan.jasonrumney.net>
1147
1148 * w32fns.c (syms_of_w32fns): Change default value of
1149 w32-scroll-lock-modifier to nil. (Bug#2827)
1150
057bce6f
JB
11512009-10-26 Juanma Barranquero <lekktu@gmail.com>
1152
782a943e 1153 * minibuf.c (Fall_completions): Fix typos in docstring.
057bce6f 1154
242bc74c
AS
11552009-10-26 Andreas Schwab <schwab@redhat.com>
1156
1157 * puresize.h (PURESIZE_RATIO): Increase back to 10/6.
1158
522d013a
JB
11592009-10-26 Juanma Barranquero <lekktu@gmail.com>
1160
1161 * window.c (grow_mini_window): Comment out "delta >= 0" assertion.
1162 For delta < 0, skip check that only makes sense when the mini-window
1163 is going to be enlarged. (Bug#4534)
1164
18060980
CY
11652009-10-25 Chong Yidong <cyd@stupidchicken.com>
1166
1167 * keyboard.c (read_char_x_menu_prompt): Don't demand a prompt
1168 string in menu maps (Bug#4471).
1169
fec8f0fe
CY
11702009-10-24 Chong Yidong <cyd@stupidchicken.com>
1171
1172 * nsfns.m (ns_set_name, ns_set_name_as_filename): Don't call
1173 FRAME_NS_VIEW on terminal frames (Bug#4765).
1174
10d66ec0
AS
11752009-10-24 Andreas Schwab <schwab@linux-m68k.org>
1176
1cae01f7
AS
1177 * dbusbind.c (xd_retrieve_arg): Handle DBUS_TYPE_INTnn and
1178 DBUS_TYPE_UINTnn separately to get proper sign extension.
1179
58a12889
AS
1180 * dired.c (Ffile_attributes): Simplify now that FIXNUM_OVERFLOW_P
1181 can properly handle unsigned types.
d528b1ce 1182 (make_uid, make_gid): Remove.
58a12889 1183
987c9327
AS
1184 * lisp.h (FIXNUM_OVERFLOW_P): Fix last change to handle unsigned
1185 types again.
1186
522d013a 1187 * sysdep.c (procfs_ttyname): Fix sprintf format to match argument type.
10d66ec0
AS
1188 (system_process_attributes): Likewise.
1189
905a9ed3
DN
11902009-10-24 Dan Nicolaescu <dann@ics.uci.edu>
1191
1192 * keymap.c (Fmake_sparse_keymap): Purecopy the name.
1193
1194 * eval.c (Fautoload): Purecopy the filename. Simplify.
1195
1196 * category.c (Fdefine_category): Purecopy docstring.
1197
a599b3e8
AS
11982009-10-23 Andreas Schwab <schwab@linux-m68k.org>
1199
7b792fc9
AS
1200 * lisp.h (FIXNUM_OVERFLOW_P): Remove cast to avoid overflow.
1201
a599b3e8
AS
1202 * puresize.h (PURESIZE_RATIO): Decrease to 11/7.
1203
b35ac83e
CY
12042009-10-23 Chong Yidong <cyd@stupidchicken.com>
1205
1206 * window.c (Fwindow_edges, Fwindow_pixel_edges)
1207 (Fwindow_inside_edges, Fwindow_inside_pixel_edges): Doc fix
1208 (Bug#4775).
1209
e8903e00
SM
12102009-10-23 Stefan Monnier <monnier@iro.umontreal.ca>
1211
1212 * fileio.c (syms_of_fileio): Initialize Vdirectory_sep_char.
1213 (init_fileio_once):
1214 * lisp.h (init_fileio_once): Remove.
1215 * emacs.c (main): Don't call init_fileio_once.
1216
8f43cbf3
DN
12172009-10-23 Dan Nicolaescu <dann@ics.uci.edu>
1218
1219 * puresize.h (BASE_PURESIZE): Increase to 1430000.
1220
26898943
AS
12212009-10-21 Andreas Schwab <schwab@linux-m68k.org>
1222
1223 * doprnt.c (doprnt): Fix overflow check.
1224
5c646d5a
JD
12252009-10-21 Jan Djärv <jan.h.d@swipnet.se>
1226
3132a7ea
JD
1227 * xterm.c (x_term_init): Remove XSynchronize call done for debugging.
1228
5c646d5a
JD
1229 * xterm.h (x_wait_for_event): Declare it.
1230
1231 * xterm.c (pending_event_wait): New variable.
1232 (handle_one_xevent): Set pending_event_wait.eventtype to 0 if we
1233 see pending_event_wait.eventtype.
1234 (handle_one_xevent): Don't change gravity when parent changes.
d528b1ce
SM
1235 (x_new_font): Call change_frame_size with new rows/columns before we
1236 try to resize the frame.
5c646d5a 1237 (x_wait_for_event): New function.
d528b1ce
SM
1238 (x_set_window_size_1): Don't change gravity unless change_gravity
1239 is set.
5c646d5a
JD
1240 Call XResizeWindow with FRAME_OUTER_WINDOW. If we are visible,
1241 don't change frame size, instead wait for the ConfigureNotify.
1242 (x_set_window_size): Call x_set_window_size_1 for USE_X_TOOLKIT also.
1243 (x_wm_set_size_hint): Remove ifdefs for USE_X_TOOLKIT.
1244 (x_initialize): Initialize pending_event_wait.
1245
1246 * xmenu.c (set_frame_menubar): Add internal border width to menu bar
1247 size.
1248
1249 * widget.c (EmacsFrameSetValues): Add comment.
1250 (EmacsFrameSetCharSize): Just call x_set_window_size.
1251
1252 * gtkutil.c (xg_frame_set_char_size): Flush events and call
1253 x_wait_for_event.
d528b1ce 1254 (flush_and_sync): Remove again.
5c646d5a
JD
1255 (xg_get_font_name): Suggest monospace if no previous font is known.
1256
e9c1637d
SM
12572009-10-20 Stefan Monnier <monnier@iro.umontreal.ca>
1258
1259 * character.c (char_resolve_modifier_mask): Don't resolve meta to the
46be764e 1260 8th bit, since that only made sense in the ASCII world (bug#4751).
e9c1637d 1261
5a72cccb
YM
12622009-10-20 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1263
1264 * xterm.c (XTread_socket) [!USE_GTK && HAVE_X_I18N]: Don't quit
1265 processing pending events when event is filtered for input method.
ab04798f 1266 (Bug#3681)
5a72cccb 1267
2629aa37
JB
12682009-10-20 Juanma Barranquero <lekktu@gmail.com>
1269
1270 * fns.c: Add #endif accidentally removed in previous change.
1271
c3417a74
DN
12722009-10-19 Dan Nicolaescu <dann@ics.uci.edu>
1273
1274 * fns.c: Remove code for unsupported system: MAC_OS.
1275 * image.c: Likewise. Include setjmp.h.
1276
9685cef2
JD
12772009-10-19 Jan Djärv <jan.h.d@swipnet.se>
1278
1279 * xterm.c (x_create_toolkit_scroll_bar): Don't allocate color for
1280 pixel -1 (bug #4742).
1281
d7306fe6
DN
12822009-10-19 Dan Nicolaescu <dann@ics.uci.edu>
1283
019d2c4c
DN
1284 * process.c (create_pty): Remove conditionals for no longer
1285 supported systems: UNIPLUS and RTU.
1286
ee6bacd4
DN
1287 * xterm.c:
1288 * xfns.c: Remove always true condition: XtSpecificationRelease >= 5.
1289
d7306fe6
DN
1290 * alloc.c: Do not define struct catchtag.
1291 * eval.c: Move struct catchtag definition ...
1292 * lisp.h: ... here.
1293
1294 * image.c: Move png.h #include earlier to avoid warnings.
1295
1296 * xterm.c:
1297 * xsmfns.c:
1298 * xselect.c:
1299 * xrdb.c:
1300 * xmenu.c:
1301 * xftfont.c:
1302 * xfont.c:
1303 * xfns.c:
1304 * xfaces.c:
1305 * xdisp.c:
1306 * window.c:
1307 * widget.c:
1308 * w32xfns.c:
1309 * w32uniscribe.c:
1310 * w32term.c:
1311 * w32select.c:
1312 * w32reg.c:
1313 * w32proc.c:
1314 * w32menu.c:
1315 * w32inevt.c:
1316 * w32heap.c:
1317 * w32font.c:
1318 * w32fns.c:
1319 * w32console.c:
1320 * w32.c:
1321 * w16select.c:
1322 * vm-limit.c:
1323 * unexsol.c:
1324 * unexec.c:
1325 * unexcw.c:
1326 * unexaix.c:
1327 * undo.c:
1328 * tparam.c:
1329 * textprop.c:
1330 * terminfo.c:
1331 * terminal.c:
1332 * termcap.c:
1333 * term.c:
1334 * syntax.c:
1335 * sound.c:
1336 * sheap.c:
1337 * search.c:
1338 * scroll.c:
1339 * region-cache.c:
1340 * regex.c:
1341 * ralloc.c:
1342 * process.c:
1343 * print.c:
b024548b
DN
1344 * nsterm.m:
1345 * nsselect.m:
1346 * nsmenu.m:
1347 * nsimage.m:
1348 * nsfont.m:
1349 * nsfns.m:
d7306fe6
DN
1350 * msdos.c:
1351 * minibuf.c:
1352 * menu.c:
1353 * marker.c:
1354 * macros.c:
1355 * keymap.c:
1356 * keyboard.c:
1357 * intervals.c:
1358 * insdel.c:
1359 * indent.c:
1360 * gtkutil.c:
1361 * ftxfont.c:
1362 * ftfont.c:
1363 * fringe.c:
1364 * frame.c:
1365 * fontset.c:
1366 * font.c:
1367 * fns.c:
1368 * floatfns.c:
1369 * filelock.c:
1370 * fileio.c:
1371 * emacs.c:
1372 * editfns.c:
1373 * dosfns.c:
1374 * doprnt.c:
1375 * doc.c:
1376 * dispnew.c:
1377 * dired.c:
1378 * dbusbind.c:
1379 * data.c:
1380 * composite.c:
1381 * coding.c:
1382 * cmds.c:
1383 * cm.c:
1384 * chartab.c:
1385 * charset.c:
1386 * character.c:
1387 * ccl.c:
1388 * category.c:
1389 * casetab.c:
1390 * casefiddle.c:
1391 * callproc.c:
1392 * callint.c:
1393 * bytecode.c:
1394 * buffer.c:
1395 * atimer.c: Include setjmp.h. (Bug#4643)
1396
fd5f21e6
SM
13972009-10-18 Stefan Monnier <monnier@iro.umontreal.ca>
1398
4c0354d7
SM
1399 Remove leftover table unibyte_to_multibyte_table.
1400 * character.c (unibyte_to_multibyte_table): Remove.
1401 (Funibyte_char_to_multibyte): Use MAKE_CHAR_MULTIBYTE.
1402 * charset.c (init_charset_once): Don't init unibyte_to_multibyte_table.
1403 * character.h (UNIBYTE_TO_CHAR): New macro.
1404 (MAKE_CHAR_MULTIBYTE): Use it.
1405 (unibyte_to_multibyte_table, unibyte_char_to_multibyte): Remove.
1406 * xdisp.c (get_next_display_element): USE ASCII_CHAR_P.
1407 (message_dolog, set_message_1):
1408 * search.c (Freplace_match):
1409 * editfns.c (Fcompare_buffer_substrings):
1410 * fns.c (Fcompare_strings): Use MAKE_CHAR_MULTIBYTE.
1411 (concat):
1412 * insdel.c (copy_text, count_size_as_multibyte):
1413 Use ASCII_CHAR_P and BYTE8_TO_CHAR.
1414 * term.c (produce_glyphs):
1415 * syntax.c (skip_chars): Use BYTE8_TO_CHAR.
1416 * regex.c (RE_CHAR_TO_MULTIBYTE):
1417 * cmds.c (internal_self_insert):
1418 * buffer.h (FETCH_CHAR_AS_MULTIBYTE): Use UNIBYTE_TO_CHAR.
1419
fd5f21e6
SM
1420 * cmds.c (internal_self_insert): `c' is already in "multibyte" form.
1421
4418646e
DN
14222009-10-17 Dan Nicolaescu <dann@ics.uci.edu>
1423
1424 * puresize.h (BASE_PURESIZE): Increase to 1310000.
1425
35f5c1d2
JB
14262009-10-16 Juanma Barranquero <lekktu@gmail.com>
1427
1428 * buffer.c (Fbuffer_name): Doc fix. (Bug#4728)
1429
a0cd8f6b
AR
14302009-10-15 Adrian Robert <Adrian.B.Robert@gmail.com>
1431
1432 * nsterm.h (NS_HAVE_NSINTEGER): Back out and augment with CGFloat,
1433 still needed under Tiger.
1434
1435 * nsterm.m (EmacsView-conversationIdentifier): Arg is long.
1436
1437 * m/amdx86-64.h: Don't set LIB_STANDARD and START_FILES under
1438 __Apple__.
1439
1440 * m/intel386.h: Remove DARWIN_OS/_LP64 special case.
1441
01a8d3fa
KH
14422009-10-15 Kenichi Handa <handa@m17n.org>
1443
1444 * print.c (print_object): Escape a symbol like "2E10" too.
1445
bf6c75c9 14462009-10-11 Adrian Robert <Adrian.B.Robert@gmail.com>
6e4780c5
JB
1447
1448 Cleanups and changes for 64-bit compile under Snow Leopard.
1449 Based on suggestions by Erik Charlebois.
bf6c75c9
AR
1450
1451 * nsfns.m (xw-color-values): Use CGFloat where appropriate.
1452
c5959062 1453 * nsfont.m (ns_char_width): Replace deprecated call.
bf6c75c9
AR
1454 (ns_findfonts, nsfont_list_family): Use long format in printf, and
1455 cast argument.
1456 (nsfont_open): Use ns_char_width() everywhere.
d528b1ce 1457 (ns_uni_to_glyphs, NSGlyphStorage): Use NS[U]Integer where appropriate.
bf6c75c9
AR
1458
1459 * nsgui.h (NSPoint, NSSize) [!__OBJC__]: Define and use CGFloat.
1460
1461 * nsimage.m (EmacsImage-setXBMColor:,-getPixelAtX:Y:): Use CGFloat
1462 where appropriate.
1463
1464 * nsmenu.m (EmacsMenu-addItemWithWidgetValue:): Use NSInteger
1465 where appropriate.
6e4780c5
JB
1466 (EmacsToolbar-addDisplayItemWithImage:idx:helpText:enabled:):
1467 Use stringWithUTF8String.
bf6c75c9
AR
1468 (EmacsDialogPanel-initWithContentRect:styleMask:): Fix signature.
1469
6e4780c5
JB
1470 * nsterm.h (EmacsView, EmacsMenu, EmacsToolbar, EmacsTooltip):
1471 Add formal protocol mention to inheritance.
bf6c75c9
AR
1472 [NS_HAVE_NSINTEGER]: Drop conditional and contents.
1473
6e4780c5
JB
1474 * nsterm.m (ns_color_to_lisp): Use CGFloat where appropriate.
1475 Fix printf format.
bf6c75c9
AR
1476 (ns_query_color): Use CGFloat where appropriate.
1477 (EmacsView<NSTextInput>, EmacsScroller): Fix method signatures.
1478 (EmacsScroller-mouseDown:) Use long format in printf, and cast
1479 argument.
1480
3d87f118
AR
1481 * config.in (NS_HAVE_NSINTEGER): Drop.
1482
a95c8102
AR
1483 * dbusbind.c (dbus-method-return-internal)
1484 (dbus-method-error-internal): Use long format in printf, and cast
1485 argument.
1486
1487 * font.c (font_unparse_xlfd, font_unparse_fcname): Use long format
1488 in printf, and cast argument.
1489
6873acca 1490 * process.c (list_processes_1): Use long format in printf, and
a95c8102
AR
1491 cast argument.
1492
9ec6f100
GM
14932009-10-11 Glenn Morris <rgm@gnu.org>
1494
1495 * frame.c (Fframe_pixel_height): Doc fix. (Bug#4535)
1496
5be883cd
JD
14972009-10-08 Jan Djärv <jan.h.d@swipnet.se>
1498
1499 * gtkutil.c (create_menus): Call gtk_widget_set_size_request for
1500 menu bar with a small width so it doesn't enlarge the frame.
1501
d7a39b51
JB
15022009-10-08 Juanma Barranquero <lekktu@gmail.com>
1503
1504 * fontset.c (Fset_fontset_font): Fix typos in error messages.
1505
0c2b6f8e
GM
15062009-10-06 Glenn Morris <rgm@gnu.org>
1507
1508 * Makefile.in (emacs${EXEEXT}): Remove direct dependence on
1509 SOME_MACHINE_LISP (this enters indirectly via DOC).
1510
e02131a2
EZ
15112009-10-05 Eli Zaretskii <eliz@gnu.org>
1512
1513 * dired.c (Ffile_attributes): Doc fix. (Bug#4638)
1514
b4744254
EZ
15152009-10-04 Eli Zaretskii <eliz@gnu.org>
1516
1517 * xdisp.c (syms_of_xdisp) <unibyte-display-via-language-environment>:
1518 Doc fix.
1519
dbf64827
JB
15202009-10-03 Martin Rudalics <rudalics@gmx.at>
1521
1522 * window.c (Fdelete_window): Check WINDOW argument. (Bug#4618)
1523
e9a0aef8
MA
15242009-10-02 Michael Albinus <michael.albinus@gmx.de>
1525
d528b1ce 1526 * lisp.h (Qdelete_directory_internal): Remove, because it is not
e9a0aef8
MA
1527 used anymore outside fileio.c.
1528
1529 * w32fns.c (Fsystem_move_file_to_trash): Use delete-directory.
1530
64eb2b56
JB
15312009-10-01 Juanma Barranquero <lekktu@gmail.com>
1532
1533 * lisp.h (Qdelete_directory_internal):
1534 Declare, instead of Qdelete_directory.
1535
1536 * w32fns.c (Fsystem_move_file_to_trash): Use it.
1537
9d28c33e
SM
15382009-10-01 Stefan Monnier <monnier@iro.umontreal.ca>
1539
1540 * eval.c (Fcalled_interactively_p): Add `kind' argument.
1541
9d8f3bd9
MA
15422009-10-01 Michael Albinus <michael.albinus@gmx.de>
1543
9d28c33e 1544 * fileio.c (Fdelete_directory_internal): Rename from
9d8f3bd9
MA
1545 Fdelete_directory. It is not a command anymore. It has no file
1546 name handler.
1547
9694740b
SM
15482009-09-28 Stefan Monnier <monnier@iro.umontreal.ca>
1549
1550 * xdisp.c (get_next_display_element): Use an enum in last change.
1551
748e162f
KH
15522009-09-28 Kenichi Handa <handa@m17n.org>
1553
9694740b 1554 * xdisp.c (get_next_display_element): Pay attention to
748e162f
KH
1555 unibyte_display_via_language_environment in handling
1556 Vnobreak_char_display.
1557
17efd58d
AR
15582009-09-27 Adrian Robert <Adrian.B.Robert@gmail.com>
1559
1560 * nsterm.h (ns_app_name): New extern variable.
1561
1562 * nsterm.m (ns_app_name): New variable.
1563 (ns_term_init): Set and use it.
1564 (ns_term_shutdown): Use it.
1565
1566 * nsmenu.m (ns_update_menubar): Use ns_app_name. Sync with xmenu.c.
1567 (EmacsMenu-clear:, ns_popup_dialog): Use ns_app_name.
1568
1569 * nsfns.m (ns_set_name_iconic, ns_set_name)
1570 (ns_set_name_as_filename, x-create-frame, ns-get-resource)
1571 (ns-set-resource): Use ns_app_name instead of NSProcessInfo call.
1572
9694740b
SM
1573 * menu.c (find_and_return_menu_selection) [HAVE_NS]:
1574 Remove double-casting in client_data comparison.
31c2d412 1575
3208cb35
YM
15762009-09-27 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1577
1578 * keyboard.c (make_lispy_event): Remember last wheel direction.
1579 (syms_of_keyboard) <wheel_syms>: Compute array size at compile time.
1580
b7d552d6
GM
15812009-09-26 Glenn Morris <rgm@gnu.org>
1582
1583 * Makefile.in (MSDOS_SUPPORT) [MSDOS]: Remove unneeded '/' in
1584 internal.elc. Add term/pc-win.elc.
1585 (WINDOW_SUPPORT) [HAVE_X_WINDOWS]: Add term/common-win.elc and
1586 term/x-win.elc.
1587 (WINNT_SUPPORT) [WINDOWSNT]: Add term/common-win.elc and
1588 term/w32-win.elc.
1589 (NS_SUPPORT): New.
1590 (lisp): Add NS_SUPPORT.
1591 (SOME_MACHINE_LISP): Add term/w32-win.elc and emacs-lisp/easymenu.elc.
1592
4ff670a8
DR
15932009-09-25 David Reitter <david.reitter@gmail.com>
1594
1595 * nsmenu.m (EmacsMenu-clear): Recognize application menu
1596 on Mac OS X 10.6+ (bug#4513).
1597
feabfb6c
JB
15982009-09-24 Juanma Barranquero <lekktu@gmail.com>
1599
1600 * frame.c (xrdb_get_resource): Return nil for empty string resources;
d528b1ce
SM
1601 some parts of Emacs code (like font selection) don't grok them.
1602 See http://lists.gnu.org/archive/html/emacs-devel/2009-09/msg00528.html
feabfb6c 1603
de59072a
AS
16042009-09-24 Andreas Schwab <schwab@redhat.com>
1605
1606 * coding.c (decode_coding_iso_2022): Fix operator precedence.
1607
a489517b
JB
16082009-09-24 Juanma Barranquero <lekktu@gmail.com>
1609
1610 * dired.c (Fdirectory_files): Fix typo in docstring.
1611
0592970c
AR
16122009-09-23 Adrian Robert <Adrian.B.Robert@gmail.com>
1613
1614 * nsterm.m (EV_TIMESTAMP, x_set_window_size)
1615 (EmacsApp-application:openFiles:): Remove GNUstep conditionals.
1616 (EmacsScroller-setPosition:portion:whole:): Remove -display call
1617 under GNUstep.
1618 (EmacsView-initFrameFromEmacs:): Set autoresizing mask.
1619
1620 * nsfont.m (ns_glyph_metrics): Remove GNUstep conditional for
1621 glyph advancement.
1622
48e8a88b
AR
16232009-09-22 Adrian Robert <Adrian.B.Robert@gmail.com>
1624
1625 * nsterm.m (CGContextSetFontRenderingMode): Drop declaration.
b3aac06a 1626 (EmacsScroller-mouseDown:): Use SCROLL_BAR_FIRST_DELAY.
48e8a88b
AR
1627
1628 * nsmenu.m (EmacsMenu-menuNeedsUpdate): Ignore if frame has been
1629 deleted (bug #4492).
1630
e14f0a78
AR
1631 * nsfont.m (Vns_reg_to_script): New lisp variable.
1632 (syms_of_nsfont): Declare it.
1633 (ns_registry_to_script): New function.
1634 (ns_get_req_script): Call it.
1635 (ns_findfonts): Don't give up on non-unicode registry.
1636
1637 * font.c (DEFAULT_ENCODING) [HAVE_NS]: Remove special case.
1638
5b650faa
SM
16392009-09-20 Tom Tromey <tromey@redhat.com>
1640
1641 * eval.c (find_handler_clause): Make stack-trace-on-error work in
1642 batch mode (bug#4228).
1643
a489517b 16442009-09-18 Rob Christie <robchristie@gmail.com> (tiny change)
0bae4e09
AR
1645
1646 * nsmenu.m (EmacsMenu-parseKeyEquiv:): Parse key equivalent more
a489517b 1647 carefully. (Bug #4339)
0bae4e09 1648
fcfe06f3
CY
16492009-09-18 Chong Yidong <cyd@stupidchicken.com>
1650
d798ba87 1651 * syntax.c (Fchar_syntax): Minor doc fix (Bug#4400).
fcfe06f3 1652
31642728
AR
16532009-09-18 Adrian Robert <Adrian.B.Robert@gmail.com>
1654
1655 * emacs.c (inhibit_x_resources): Update doc string for NS.
1656 (main) [HAVE_NS]: Don't process --no-init-file option. Remove
cff11156 1657 legacy code for -NXHost. Fix error printf in daemon case.
31642728
AR
1658
1659 * nsterm.h (ns_no_defaults): Remove.
1660
1661 * nsterm.m (ns_no_defaults): Remove.
1662 (ns_term_init): Switch ns_no_defaults -> inhibit_x_resources.
1663 (ns_use_qd_smoothing): Remove legacy variable.
6516d10a
AR
1664 (EmacsView-windowShouldZoom:): Set frame left_pos, top_pos and
1665 don't update the NSWindow itself.
1666 (EmacsView-windowWillUseStandardFrame:defaultFrame:): Improve
a489517b 1667 state detection and store user rect ourselves. (Bug #3581)
31642728
AR
1668
1669 * nsfont.m (nsfont_draw) [NS_IMPL_COCOA]: Don't use
1670 ns_use_qd_smoothing.
1671
1672 * nsfns.m (x_get_string_resource): Ape just-previous changes to other
1673 platform versions. Drop support for emacs-20-style face specs.
8aad0aea 1674 (x-close-connection): Drop PSFlush() under OS X.
a489517b 1675 (x-focus-frame): Activate the app first. (Bug #4180)
31642728 1676
8686ac71
JB
16772009-09-17 Juanma Barranquero <lekktu@gmail.com>
1678
1679 * emacs.c (inhibit_x_resources): New variable.
1680 (main) [HAVE_NS]: Don't process --quick command line option.
1681 (syms_of_emacs) <inhibit-x-resources>: DEFVAR_BOOL it.
1682
1683 * lisp.h (inhibit_x_resources): Declare it extern.
1684
1685 * w32reg.c (x_get_string_resource):
1686 * xrdb.c (x_get_string_resource): Obey inhibit_x_resources.
1687
e227ba05
EZ
16882009-09-17 Eli Zaretskii <eliz@gnu.org>
1689
362654a6
JB
1690 * Makefile.in (MSDOS_SUPPORT, SOME_MACHINE_LISP):
1691 Add lisp/term/internal.elc.
e227ba05 1692
742d40e8
SM
16932009-09-17 Stefan Monnier <monnier@iro.umontreal.ca>
1694
1695 * frame.c (x_get_resource_string): Re-add for non-toolkit builds
1696 (bug#4461).
1697
005bd5a2
DN
16982009-09-17 Dan Nicolaescu <dann@ics.uci.edu>
1699
1700 * puresize.h (BASE_PURESIZE): Increase to 1290000.
1701
1702 * Makefile.in (OTHER_FILES): Define using autoconf, not cpp.
1703 (OBJECTS_MACHINE): Remove, unused.
1704
f9af9719
SM
17052009-09-16 Stefan Monnier <monnier@iro.umontreal.ca>
1706
1707 * frame.c (x_get_resource_string): Remove unused.
1708
0307c7d2
JD
17092009-09-15 Jan Djärv <jan.h.d@swipnet.se>
1710
1711 * xterm.c (x_new_font): Call change_frame_size before calling
1712 x_set_window_size, in case frame size won't change.
1713
1714 * frame.c (x_set_font): Remove dead code.
1715
428b13d6
SM
17162009-09-15 Stefan Monnier <monnier@iro.umontreal.ca>
1717
1718 * lread.c (Fload): Also run do-after-load-evaluation while dumping.
1719
5766c380
SM
17202009-09-12 Stefan Monnier <monnier@iro.umontreal.ca>
1721
1722 * lread.c (Fload): Don't output a message after loading an obsolete
1723 package any more (done in Lisp now).
1724
2fd0161b
CY
17252009-09-12 Chong Yidong <cyd@stupidchicken.com>
1726
1727 * fns.c (syms_of_fns): Doc fix (Bug#4227).
1728
bc5e75b6
SM
17292009-09-12 Stefan Monnier <monnier@iro.umontreal.ca>
1730
1731 * keymap.c (Fwhere_is_internal): Use nconc2.
1732
c31c985e
AM
17332009-09-11 Alan Mackenzie <acm@muc.de>
1734
1735 * dispnew.c (Fsend_string_to_terminal): Amend doc string to cover
1736 batch mode.
1737
78012bd2
AS
17382009-09-11 Andreas Schwab <schwab@linux-m68k.org>
1739
1740 * xdisp.c (display_mode_element): Detect cycles.
1741
9d889332
SM
17422009-09-11 Stefan Monnier <monnier@iro.umontreal.ca>
1743
1744 * keymap.c (where_is_internal): Don't erroneously return nil right after
1745 filling the cache.
1746 (where_is_internal_1): Fix up typo.
1747
7ab5d780
GM
17482009-09-11 Glenn Morris <rgm@gnu.org>
1749
1750 * frame.c (Fx_parse_geometry): Unify the X and NS versions so that they
1751 share a common doc-string.
1752
5238a749
SM
17532009-09-11 Stefan Monnier <monnier@iro.umontreal.ca>
1754
66d77eda
SM
1755 * keymap.c (get_keymap): Return the actual keymap symbol rather than
1756 t for autoloaded keymaps when autoloading is not allowed (bug#4393).
1757
5238a749
SM
1758 * keymap.c (QCadvertised_binding): New constant.
1759 (syms_of_keymap): Initialize it.
1760 (Fwhere_is_internal): Try and use bindings from :advertised-binding
1761 if applicable.
1762
19f48442
SM
17632009-09-10 Stefan Monnier <monnier@iro.umontreal.ca>
1764
50d4ba39
SM
1765 * keyboard.c (Qmenu_alias, Vdefine_key_rebound_commands): Remove.
1766 (parse_menu_item): Streamline since bindings are recomputed all the
1767 time anyway. Don't bother checking Vdefine_key_rebound_commands any
1768 more and don't support lmenu's menu-alias any more either.
1769
a88a5372
SM
1770 * keymap.c (where_is_internal_data): Make noindirect a boolean.
1771 (where_is_internal): Strip it down to only traverse the keymaps.
1772 Move the cache handling from Fwhere_is_internal to here.
1773 (Fwhere_is_internal): Move the handling of remapping and the choice of
1774 the best binding from where_is_internal to here.
1775 Unify the cached/noncached paths, so remapping is also handled
1776 correctly when the cache is used, and so the cache can be used to
1777 speed up remap-handling when applicable.
1778 Give preference to non-remapped bindings.
1779 * doc.c (Fsubstitute_command_keys): Let Fwhere_is_internal's prefer
1780 non-remapped bindings.
1781 * keyboard.c (parse_menu_item): Let Fwhere_is_internal handle
1782 command remapping.
1783
19f48442
SM
1784 * xdisp.c (display_mode_element): Move list length limit from 50 to
1785 5000 (see thread starting with <xbaik5174uqu.fsf@cam.ac.uk>).
1786
599498c3 17872009-09-09 Adrian Robert <Adrian.B.Robert@gmail.com>
c1905ca3
AR
1788
1789 * nsfont.m (ns_get_family): Don't force first letter to uppercase.
1790
f9b7b5ac
SM
17912009-09-09 Stefan Monnier <monnier@iro.umontreal.ca>
1792
a53af587
JB
1793 * xdisp.c (Vtruncate_partial_width_windows): Improve docstring.
1794 (Bug#4334)
1795
f9b7b5ac
SM
1796 * keymap.c (where_is_internal): Filter out shadowed remappings.
1797 Assume that where_is_internal returns unshadowed bindings to simplify
1798 the code and get rid of the gotos. Use ASIZE.
1799
04f4b72d
JD
18002009-09-04 Jan Djärv <jan.h.d@swipnet.se>
1801
4da146f2
JD
1802 * xterm.c (x_focus_changed): If we get a focusout and pointer
1803 is invisible, make it visible.
1804
04f4b72d
JD
1805 * xterm.h: Remove condition for declaration of
1806 x_*_window_to_frame.
1807
7cef7ce3
SM
18082009-09-03 Stefan Monnier <monnier@iro.umontreal.ca>
1809
1810 * dispnew.c (Fsend_string_to_terminal): Make it work again on the
1811 initial terminal as well.
1812
a54fa5b7
JD
18132009-09-02 Jan Djärv <jan.h.d@swipnet.se>
1814
1815 * xterm.h: Rename x_non_menubar_window_to_frame to
7cef7ce3 1816 x_menubar_window_to_frame.
a54fa5b7
JD
1817
1818 * xterm.c: Remove declarations also in xterm.h
1819 (XTmouse_position): Do not return valid positions
1820 for clicks in the menubar and the toolbar for Gtk+.
1821
1822 * xfns.c (x_any_window_to_frame): Assume less about Gtk+ internals,
1823 if the widget for the event has the same top level as a frame,
1824 return the frame.
1825 (x_menubar_window_to_frame): Detect menu bar even with Gtk+
1826 internal windows, bug #4122.
1827 (x_non_menubar_window_to_frame): Remove.
1828
5a021dd0
GM
18292009-09-02 Glenn Morris <rgm@gnu.org>
1830
1831 * buffer.c (default-major-mode): Move most of the doc from here...
1832 (major-mode): ... to here.
1833
548fe2f3
NR
18342009-08-30 Nick Roberts <nickrob@snap.net.nz>
1835
1836 * process.c (wait_reading_process_output): Keep the descriptor
1837 when pty is used by a non-child process, e.g., in I/O buffer of
1838 GDB this allows inferior to be restarted.
1839
e0840eef
EZ
18402009-08-29 Eli Zaretskii <eliz@gnu.org>
1841
1842 * xdisp.c (redisplay_internal): Remove redundant test and collapse
1843 both branches into one.
1844
82e98df4
SM
18452009-08-29 Stefan Monnier <monnier@iro.umontreal.ca>
1846
1847 * emacs.c (USAGE1): Remove --(no-)multibyte, --(no-)unibyte.
1848 (main): Use enable-multibyte-characters rather than
1849 default-enable-multibyte-characters. Output a warning message when
1850 running a unibyte session.
1851
890617cb
YM
18522009-08-28 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1853
1854 * unexmacosx.c (print_load_command_name) [LC_DYLD_INFO]: Add cases
1855 LC_DYLD_INFO and LC_DYLD_INFO_ONLY.
1856 (copy_data_segment): Also copy __program_vars section.
1857 (copy_dyld_info) [LC_DYLD_INFO]: New function.
1858 (dump_it) [LC_DYLD_INFO]: Use it.
1859
1860 * s/darwin.h [temacs]: Undef HAVE_POSIX_MEMALIGN.
1861
e7adeadc
EZ
18622009-08-28 Eli Zaretskii <eliz@gnu.org>
1863
1864 * makefile.w32-in ($(BLD)/doc.$(O)): Depend on buildobj.h, not on
1865 $(SRC)/buildobj.h.
1866 (buildobj.h): Renamed from $(SRC)/buildobj.h.
1867 (make-buildobj-CMD, make-buildobj-SH): Create buildobj.h, not
1868 $(SRC)/buildobj.h.
1869 (clean): Add buildobj.h.
1870
3ed8bbdc
TZ
18712009-08-28 Teodor Zlatanov <tzz@lifelogs.com>
1872
1873 * print.c (print_object): Set escapeflag to 1 when printing
1874 hashtable keys and values.
1875
155a6764
SM
18762009-08-27 Stefan Monnier <monnier@iro.umontreal.ca>
1877
1878 * lread.c (read_integer): Use doubles (and potentially return a float
1879 number) as we do in string-to-number.
1880 (read1): Use strtol to read integers, signal errors on strtol's
1881 overflow and use floats if strtol's output is too large for
1882 Elisp integers.
1883
877610de
EZ
18842009-08-27 Eli Zaretskii <eliz@gnu.org>
1885
1886 * makefile.w32-in ($(SRC)/buildobj.h, make-buildobj-CMD)
1887 (make-buildobj-SH): Fix last change.
1888 (SRC): Move to before where it's first used.
1889
ef73e7be
KH
18902009-08-27 Kenichi Handa <handa@m17n.org>
1891
550c8289
KH
1892 * process.c (send_process): Use encode_coding_object instead of
1893 encode_coding_string to perform eol-conversion even if the string
1894 is unibyte.
1895
60afa08d
KH
1896 * coding.c (encode_coding_utf_16): Fix checking of a Unicode
1897 character.
1898
ef73e7be 1899 * cmds.c (Fself_insert_command): Avoid unnecessay
8a0b709a 1900 unibyte->multibyte conversion. (Bug#4240) (Bug#4037)
ef73e7be 1901
7b3a82d7
DN
19022009-08-26 Dan Nicolaescu <dann@ics.uci.edu>
1903
5654bf63
DN
1904 * callproc.c (Fcall_process): Remove always true #if.
1905
7b3a82d7
DN
1906 * lisp.h: Replace #if 0 code for checking with text pointing to
1907 the --enable-checking configure flag.
1908
1909 * emacs.c (main): Mention the --enable-profiling configure flag
1910 instead of using CFLAGS.
1911
878bde49
KR
19122009-08-26 Ken Raeburn <raeburn@raeburn.org>
1913
1914 * Makefile.in (buildobj.h): New target.
1915 (doc.o): Depend on it.
1916 (temacs${EXEEXT}): Don't generate buildobj.lst.
1917 (mostlyclean): Delete buildobj.h, not buildobj.lst.
1918 * makefile.w32-in ($(SRC)/buildobj.h): New target.
1919 ($(BLD)/doc.$(O)): Depend on it.
1920 (make-buildobj-CMD, make-buildobj-SH): New targets. (Syntax help
1921 provided by Eli Zaretskii.)
1922 ($(TEMACS)): Don't generate buildobj.lst.
1923 * doc.c: Include buildobj.h.
1924 (buildobj): New static variable.
1925 (Fsnarf_documentation): Use it, instead of opening and reading
1926 buildobj.lst.
1927
1574224c
MA
19282009-08-25 Michael Albinus <michael.albinus@gmx.de>
1929
1930 * dbusbind.c (Fdbus_call_method)
1931 (Fdbus_call_method_asynchronously): Use English numeric format for
1932 timeout values in doc string.
1933
d9da2f45
KH
19342009-08-25 Kenichi Handa <handa@m17n.org>
1935
ef73e7be
KH
1936 * alloc.c (mark_char_table): New function.
1937 (mark_object): Use mark_char_table for a char-table.
1938
d9da2f45
KH
1939 * lisp.h (CHAR_TABLE_REF_ASCII): New macro.
1940 (CHAR_TABLE_REF): Use it.
1941
c8edcc01
KR
19422009-08-23 Ken Raeburn <raeburn@raeburn.org>
1943
1944 * Makefile.in (emacs${EXEEXT}) [CANNOT_DUMP]: Set EMACSLOADPATH
1945 before invoking the newly build emacs to check for load-path
1946 shadowing.
1947
7763401b
GM
19482009-08-22 Glenn Morris <rgm@gnu.org>
1949
1950 * Makefile.in (bootstrap_exe): New variable.
1951 (.el.elc, ${lispsource}loaddefs.el, bootstrap-emacs${EXEEXT}):
1952 Use ${bootstrap_exe}.
1953
729eadda
EZ
19542009-08-22 Eli Zaretskii <eliz@gnu.org>
1955
1956 * coding.h (encode_coding_string): Don't encode unibyte strings.
1957 (Bug#4047)
1958
eb4c6ace
MA
19592009-08-22 Michael Albinus <michael.albinus@gmx.de>
1960
1961 * config.in (HAVE_DBUS_WATCH_GET_UNIX_FD): Add.
1962
1963 * dbusbind.c (XD_WITH_DBUS_WATCH_GET_UNIX_FD): Remove. It was
1964 intended as hotfix only.
1965 (xd_add_watch, xd_remove_watch): Use HAVE_DBUS_WATCH_GET_UNIX_FD.
1966
36e34d1b
AR
19672009-08-21 Adrian Robert <Adrian.B.Robert@gmail.com>
1968
1969 * nsterm.m (ns_get_color): Update documentation properly for last
1970 change, and clean up loose ends in the code left by it. Fix
1971 longstanding bug with 16-bit hex parsing, and add support for
1972 yet another X11 format (rgb:r/g/b) for compatibility.
1973 * nsfns.m (EmacsDialogPanel-runDialogAt): Add declaration of
1974 timer_check() to avoid crash on Leopard/PPC. Bug #2154.
1975
f983eb8a
SM
19762009-08-21 Stefan Monnier <monnier@iro.umontreal.ca>
1977
1978 * eval.c (init_eval_once): Bump max_lisp_eval_depth to 500 for js.el.
1979
3f56d3c6
MA
19802009-08-20 Michael Albinus <michael.albinus@gmx.de>
1981
1982 * dbusbind.c (XD_WITH_DBUS_WATCH_GET_UNIX_FD): New macro.
1983 (xd_add_watch, xd_remove_watch): Use it. Print debug messages.
1984 (xd_initialize, xd_pending_messages): Check, whether
1985 $DBUS_SESSION_BUS_ADDRESS is set.
1986
fb641d68
YM
19872009-08-20 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1988
1989 * nsfns.m (Fxw_color_values): Return 3-element list. Doc fix.
1990
1991 * nsterm.m (ns_get_color): Remove incompatible color formats again.
1992
cf59a374
GM
19932009-08-20 Glenn Morris <rgm@gnu.org>
1994
1995 * emacs.c (system-type): Doc fix.
1996
1373f3be
SM
19972009-08-19 Stefan Monnier <monnier@iro.umontreal.ca>
1998
1999 * keyboard.c (syms_of_keyboard): Default to 5 buttons, which should be
2000 enough for the most common situations. Avoid SET_SYMBOL_VALUE.
2001
058ed861
MA
20022009-08-18 Michael Albinus <michael.albinus@gmx.de>
2003
1373f3be
SM
2004 * dbusbind.c (xd_add_watch, xd_remove_watch, Fdbus_init_bus):
2005 New functions.
058ed861
MA
2006 (xd_initialize): Revert change from 2009-08-16.
2007
563a866e 20082009-08-18 Kenichi Handa <handa@m17n.org>
5fc05db0
KH
2009
2010 * fontset.c (Ffontset_font): If a nil element is found in a
563a866e 2011 font-group vector, return nil.
5fc05db0 2012
e42bdf01
CY
20132009-08-17 Chong Yidong <cyd@stupidchicken.com>
2014
2015 * process.c (status_notify): Don't perform redisplay.
2016 (Fdelete_process, list_processes_1, process_send_signal):
2017 Expliticly perform redisplay.
2018 (wait_reading_process_output): Always check process status, but
2019 don't perform redisplay unless DO_DISPLAY is non-zero (Bug#2930).
2020
4230ab74
KR
20212009-08-17 Ken Raeburn <raeburn@raeburn.org>
2022
1373f3be 2023 * lisp.h (XFLOAT_DATA): Produce an rvalue by adding 0 to the value.
f601cdf3
KR
2024 (XFLOAT_INIT): New macro for storing a float value.
2025 * alloc.c (make_float, make_pure_float): Use XFLOAT_INIT.
2026 * fns.c (sxhash): Copy out the value of a float in order to
2027 examine its bytes.
2028 * dbusbind.c (xd_append_arg): Likewise.
2029
4230ab74
KR
2030 * emacs.c (main): Don't call syms_of_data twice.
2031
a0645cdd
MA
20322009-08-16 Michael Albinus <michael.albinus@gmx.de>
2033
2034 * dbusbind.c (xd_initialize): Add connection file descriptor to
2035 input_wait_mask, in order to let select() detect, whether a new
2036 message has been arrived.
ca4f31ea 2037 (Fdbus_call_method_asynchronously): Allow nil HANDLER.
a0645cdd 2038
485db0ba
MA
20392009-08-15 Michael Albinus <michael.albinus@gmx.de>
2040
1373f3be
SM
2041 * dbusbind.c (xd_get_dispatch_status, xd_pending_messages):
2042 New functions.
485db0ba
MA
2043
2044 * lisp.h (xd_pending_messages): Declare.
2045
2046 * keyboard.c (readable_events): Call xd_pending_messages.
2047
b5b98ff4
CY
20482009-08-15 Chong Yidong <cyd@stupidchicken.com>
2049
1373f3be 2050 * eval.c (Fcalled_interactively_p, Finteractive_p): Doc fix (Bug#3936).
84b17ab0 2051
f8354c6e
CY
2052 * xdisp.c (pop_it): Don't pop into a display vector (Bug#4131).
2053
b5b98ff4
CY
2054 * buffer.c (set_buffer_internal_1)
2055 (swap_out_buffer_local_variables): Check for unbound local
2056 variables (Bug#4138).
2057
8b9fc636
EZ
20582009-08-14 Eli Zaretskii <eliz@gnu.org>
2059
2060 * process.c (create_pty): Fix last change.
2061
ce959360
CY
20622009-08-13 Chong Yidong <cyd@stupidchicken.com>
2063
2064 * image.c (xbm_read_bitmap_data): New arg inhibit_image_error.
2065 (xbm_load_image): Caller changed.
64b807c9 2066 (xbm_file_p): Avoid signalling an image_error (Bug#4107).
ce959360 2067
c7baf7e9
NR
20682009-08-13 Nick Roberts <nickrob@snap.net.nz>
2069
2070 * process.c (create_pty): New function.
2071 (Fstart_process): Use it to allow Emacs to just associate a pty
2072 with the buffer. See associated change in gdb-mi.el.
2073 (list_processes_1): Deal with no program name.
2074 (start_process_unwind): Use pid == -2 to mean no process.
2075
1ac9108a
SM
20762009-08-12 Stefan Monnier <monnier@iro.umontreal.ca>
2077
2078 * cmds.c (nonundocount): New global variable.
2079 (keys_of_cmds): Initialize it.
2080 (Fself_insert_command): Use it to combine upto 20 sequential chars
2081 into a single undo entry, just like the Qself_insert_command code in
2082 keyboard.c does.
2083 Call frame_make_pointer_invisible, also like the Qself_insert_command
2084 code in keyboard.c does.
2085 * keyboard.c (command_loop_1): Use the new global nonundocount rather
2086 than its own local replacement for it.
2087
e267324c
KR
20882009-08-10 Ken Raeburn <raeburn@raeburn.org>
2089
1ac9108a 2090 * fns.c (concat): Don't re-set string length to its current value.
77437343 2091
1ac9108a
SM
2092 * coding.h (decode_coding_string, encode_coding_string):
2093 Use SBYTES macro.
f0bed503 2094
1ac9108a 2095 * doprnt.c (doprnt_lisp): Delete unused function.
e267324c
KR
2096 (doprnt): Merge with doprnt1, discarding lispstrings code.
2097 * lisp.h (doprnt_lisp): Don't declare.
2098
416e006d
JL
20992009-08-07 Juri Linkov <juri@jurta.org>
2100
2101 * puresize.h (BASE_PURESIZE): Increase to 1270000.
2102
6f7d5780
DN
21032009-08-07 Dan Nicolaescu <dann@ics.uci.edu>
2104
2105 * print.c (syms_of_print): Undo previous change.
2106
f19a0f5b
TZ
21072009-08-05 Teodor Zlatanov <tzz@lifelogs.com>
2108
2109 * lread.c (read1, syms_of_lread): Read hashtables back from the
2110 readable format.
2111
2112 * print.c (print_preprocess, print_object): Print hashtables fully
2113 and readably.
2114 (syms_of_print): Provide 'hashtable-print-readable.
2115
b9173dc2
AR
21162009-08-02 Adrian Robert <Adrian.B.Robert@gmail.com>
2117
2118 * nsfont.m (ns_descriptor_to_entity): Handle case when descriptor has
2119 no family set.
2120 (nsfont_open): Handle case when entity has no family.
2121
1586503c
AR
21222009-07-29 Adrian Robert <Adrian.B.Robert@gmail.com>
2123
2124 * nsfont.m (ns_findfonts): Fix 2009-07-24 change to return only one
2125 element, not a list, for match case.
2126
087048cd
KH
21272009-07-28 Kenichi Handa <handa@m17n.org>
2128
2129 * font.c (font_parse_xlfd): Check DPI and AVGWIDTH properties more
2130 rigidly.
2131
2132 * xfont.c (xfont_list_pattern): Don't ignore the return value of
2133 font_parse_xlfd. Check font properties more rigidly.
2134
780c2506
DN
21352009-07-27 Dan Nicolaescu <dann@ics.uci.edu>
2136
31fd7c5c
JB
2137 * s/netbsd.h (SIGNALS_VIA_CHARACTERS): Remove, already defined in
2138 bsd-common.h.
780c2506 2139
a8c0cc18
KH
21402009-07-27 Kenichi Handa <handa@m17n.org>
2141
2142 * xfaces.c (face_with_height): Call font_clear_prop.
2143
4fbe2306
CY
21442009-07-26 Chong Yidong <cyd@stupidchicken.com>
2145
111d9af3
CY
2146 * dispnew.c (init_display): Use Qx, Qw32, and Qns.
2147
2148 * xterm.c (x_term_init): Use Qx.
2149
4fbe2306
CY
2150 * nsfont.m (nsfont_draw): Revert 2009-07-15 change.
2151
1ac9108a 2152 * nsterm.m (ns_maybe_dumpglyphs_background): Revert 2009-07-15 change.
4fbe2306
CY
2153 (ns_get_color): Revert 2009-07-16 change.
2154
beb0b7f9
EZ
21552009-07-25 Eli Zaretskii <eliz@gnu.org>
2156
2157 * lread.c (syms_of_lread) <force_load_messages>: New variable.
1ac9108a 2158 (Fload): Use it to force load messages, even if NOMESSAGES is non-nil.
beb0b7f9 2159
2baf5e76
KR
21602009-07-25 Ken Raeburn <raeburn@raeburn.org>
2161
1ac9108a
SM
2162 * coding.h (decode_coding_string, encode_coding_string):
2163 Use SCHARS macro.
8890e5f5 2164
2baf5e76 2165 * lread.c: Rewrite 2009-07-21 changes.
1ac9108a 2166 (load_depth): Delete.
2baf5e76
KR
2167 (Qload_in_progress): New variable.
2168 (load_unwind): Don't reference load_depth or load_in_progress.
2169 (Fload): Likewise; specbind Qload_in_progress instead.
2170 (init_lread): Don't initialize load_depth.
2171 (syms_of_lread): Initialize and protect Qload_in_progress.
2172
1395c6f5
AR
21732009-07-24 Adrian Robert <Adrian.B.Robert@gmail.com>
2174
2175 * nsfont.m (ns_findfonts): Correctly return fallback in match case.
2176
4e2f36cf
AR
21772009-07-23 Yavor Doganov <yavor@gnu.org>
2178
2179 * nsfont.m (NSFontDescriptor.h): Explicitly include under GNUstep.
2180
5dd9a6f7
AR
21812009-07-23 Adrian Robert <Adrian.B.Robert@gmail.com>
2182
2183 * nsterm.m (EmacsView-keyUp:): Only act when running under Tiger.
7f6ad209
AR
2184 Bugs 3792, 3720, 2402.
2185 (ns_lookup_indexed_color): Check for bad index.
2186 (ns_index_color): Init unused slot to 0.
2187 (ns_dumpglyphs_box_or_relief): Replace useless xassert with an if().
2188 Bug 3714, possibly 3082.
5dd9a6f7 2189
c902b920
JR
21902009-07-22 Jason Rumney <jasonr@gnu.org>
2191
1ac9108a
SM
2192 * w32fns.c (w32_wnd_proc) [WM_IME_STARTCOMPOSITION]:
2193 Position IME window at cursor (Bug#2570).
c902b920
JR
2194 (w32_wnd_proc) [WM_IME_CHAR]: Release context when finished.
2195 (globals_of_w32fns): Dynamically load functions required above.
2196
2197 * w32term.c (w32_draw_window_cursor): Send message to reposition
2198 any IME window.
2199
090101cf
CY
22002009-07-21 Chong Yidong <cyd@stupidchicken.com>
2201
2202 * fileio.c: Revert 2009-07-16 changes.
2203 (Vauto_save_include_big_deletions): New variable.
2204 (Fdo_auto_save): Disable auto-save only if
2205 auto-save-include-big-deletions is nil.
2206
e6583e3d
CY
22072009-07-21 Chong Yidong <cyd@stupidchicken.com>
2208
2209 * xdisp.c (move_it_to): For continued lines ending in a tab, take
2210 the overflowed pixels into account (Bug#3879).
2211
ece435a5
KR
22122009-07-21 Ken Raeburn <raeburn@raeburn.org>
2213
2214 * lread.c (load_depth): New variable.
2215 (Fload, load_unwind, init_lread): Set it to the load recursion
2216 depth; set load_in_progress as a simple boolean based on the
2217 current load_depth. (Bug#3892)
2218
40b2d973
AR
22192009-07-20 Adrian Robert <Adrian.B.Robert@gmail.com>
2220
2221 * nsfont.m (ns_has_attribute): Remove.
2222 (ns_findfonts, nsfont_open): Use ns_attribute_fvalue() instead.
2223
10be7e0d
JL
22242009-07-18 Juri Linkov <juri@jurta.org>
2225
2226 * process.c (Fset_process_query_on_exit_flag): Mention killing
2227 a buffer in docstring.
2228
fa055055
KH
22292009-07-17 Kenichi Handa <handa@m17n.org>
2230
2231 * casetab.c (shuffle): Fix the logic of setting up the cycle.
2232
042f7b69
YM
22332009-07-16 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
2234
2235 * nsfns.m (Fns_set_alpha): Remove function.
2236 (syms_of_nsfns): Don't defsubr it.
2237
2238 * nsterm.m (ns_get_color): Remove incompatible color formats.
2239 (ns_color_to_lisp): Generate #rrggbb color format string.
2240
4be941e3
RS
22412009-07-16 Richard Stallman <rms@gnu.org>
2242
2243 * fileio.c (Fwrite_region, Fdo_auto_save): Handle save_length = -2.
2244 (Fset_buffer_auto_saved): Handle save_length = -2.
2245
4e6b227d
CY
22462009-07-16 Chong Yidong <cyd@stupidchicken.com>
2247
2248 * xterm.c (Qx_gtk_map_stock): New var.
2249
2250 * gtkutil.c (update_frame_tool_bar): Use Qx_gtk_map_stock instead
2251 of calling intern each time.
2252
a1856973
YM
22532009-07-15 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
2254
2255 * nsfont.m (nsfont_draw): Remove code for stippling, which actually
2256 does tiling.
2257
2258 * nsterm.m (ns_maybe_dumpglyphs_background): Likewise.
2259
497e54d8
KH
22602009-07-14 Kenichi Handa <handa@m17n.org>
2261
72d36834
KH
2262 * font.c (font_vconcat_entity_vectors): New function.
2263 (struct font_sort_data): New member font_driver_preference.
2264 (font_compare): Check font_driver_preference.
2265 (font_sort_entities): The format of the first argument changed.
2266 (font_delete_unmatched): Likewise.
2267 (font_list_entities): The return type changed.
2268 (font_select_entity): The format of the second argument changed.
1ac9108a
SM
2269 (font_find_for_lface): Adjuste for the above changes.
2270 Don't suppress the checking of C even if the repertory supports it.
2271 (Flist_fonts): Adjust for the above changes.
72d36834 2272
1ac9108a
SM
2273 * ftfont.c (ftfont_spec_pattern): New arg langname. Change caller.
2274 (ftfont_list): Adjust for the change of ftfont_spec_pattern.
497e54d8
KH
2275 Reject a font who has adstyle property that is different from a
2276 langname derived from registry property.
1ac9108a 2277 (ftfont_match): Adjust for the change of ftfont_spec_pattern.
497e54d8 2278
b6046155
EZ
22792009-07-13 Eli Zaretskii <eliz@gnu.org>
2280
2281 * dired.c (directory_files_internal) [WINDOWSNT]: Don't make a
2282 local copy of dirfilename.
2283
fb6b6049
KH
22842009-07-13 Kenichi Handa <handa@m17n.org>
2285
e2402a5e
KH
2286 * chartab.c (sub_char_table_ref_and_range): Fix the range check
2287 against max_char.
2288
fb6b6049
KH
2289 * cmds.c (internal_self_insert): Check sym by SYMBOLP before
2290 calling XSYMBOL (sym).
2291
65156807
EZ
22922009-07-11 Eli Zaretskii <eliz@gnu.org>
2293
1ac9108a
SM
2294 * dired.c (directory_files_internal_w32_unwind) [WINDOWSNT]:
2295 New function.
2296 (directory_files_internal) [WINDOWSNT]:
2297 Bind w32-get-true-file-attributes to either t or nil, depending whether
65156807
EZ
2298 the filesystem of the directory is fast or slow.
2299
2300 * w32.c (logon_network_drive): Don't assume PATH is an absolute
2301 file name.
2302 (is_slow_fs): New function.
2303 (stat): Use it to determine whether to issue more system calls to
2304 get accurate file attributes, when w32-get-true-file-attributes is
2305 `local'.
2306
e0ab5fcf
JD
23072009-07-10 Jan Djärv <jan.h.d@swipnet.se>
2308
2309 * xfns.c (Fx_select_font): Remember last font selected in
31fd7c5c 2310 x_last_font_name and use that the next time. Also try the frame
e0ab5fcf
JD
2311 parameter font-parameter as default to the font dialog.
2312
784ceded
KH
23132009-07-10 Kenichi Handa <handa@m17n.org>
2314
2315 * xftfont.c (xftfont_open): Fix typo: FC_RGBA->FC_HINT_STYLE.
2316
fb8edc0b
EZ
23172009-07-09 Eli Zaretskii <eliz@gnu.org>
2318
1ac9108a 2319 * w32proc.c (syms_of_ntproc) <w32-get-true-file-attributes>: Doc fix.
017dab84 2320
fb8edc0b
EZ
2321 * w32.c (stat): Treat UNC file names as residing on remote
2322 drives. (Bug#3542)
2323
635c75b1
KH
23242009-07-09 Kenichi Handa <handa@m17n.org>
2325
2326 * fontset.c (fontset_find_font): Fix previous change.
2327
c1d5ce94
MA
23282009-07-08 Michael Albinus <michael.albinus@gmx.de>
2329
2330 * dbusbind.c (xd_initialize, Fdbus_call_method, xd_read_message)
2331 (Fdbus_register_signal, Fdbus_register_method): Cleanup memory of
2332 error flag.
2333
edb61b39
KH
23342009-07-08 Kenichi Handa <handa@m17n.org>
2335
374bf7e4
KH
2336 * fontset.c (fontset_find_font): Fix the logic of handling
2337 charset_matched.
2338 (font_for_char): Delete unused var.
2339 (generate_ascii_font_name): Delete it.
2340
edb61b39
KH
2341 * coding.h (JIS_TO_SJIS2): Fix the code range check.
2342
2343 * coding.c (detect_coding_sjis): Handle shift_jis-2004 correctly.
2344 (encode_coding_sjis): Fix the code range check.
2345
0f3f018c
CY
23462009-07-07 Chong Yidong <cyd@stupidchicken.com>
2347
2348 * fileio.c (Fsubstitute_in_file_name, Ffile_name_directory)
2349 (Fexpand_file_name): Copy string data properly (Bug#3772).
2350
fcaf6f3a
JD
23512009-07-07 Jan Djärv <jan.h.d@swipnet.se>
2352
2353 * xterm.c (handle_one_xevent): Only call x_check_fullscreen on the
2354 first MapNotify.
2355
6809ca75
KH
23562009-07-07 Kenichi Handa <handa@m17n.org>
2357
2358 * character.h (unibyte_has_multibyte_table): Delete extern.
2359 (UNIBYTE_CHAR_HAS_MULTIBYTE_P): Delete it.
2360
2361 * charset.c (Fset_charset_priority): Update charset_unibyte.
2362 (syms_of_charset): Initialize charset_unibyte.
2363
2364 * character.c (unibyte_has_multibyte_table): Delete it.
2365 (multibyte_char_to_unibyte): Use CHAR_TO_BYTE8 instead of checking
2366 charset_unibyte.
2367 (multibyte_char_to_unibyte_safe): Likewise.
2368 (Funibyte_char_to_multibyte): Don't check charset_unibyte.
2369
1ac9108a 2370 * xdisp.c (get_next_display_element): Decode it->c by charset_unibyte.
6809ca75
KH
2371 (x_produce_glyphs): Likewise.
2372
2373 * .gdbinit (xcharset): Fix the treating $arg0.
2374
ad9e2d54
EZ
23752009-07-04 Eli Zaretskii <eliz@gnu.org>
2376
2377 Emulation of `getloadavg' on MS-Windows.
2378 * w32.c: Include float.h
2379 (g_b_init_get_native_system_info, g_b_init_get_system_times)
2380 (GetNativeSystemInfo_Proc, GetSystemTimes_Proc): Declare.
2381 (get_native_system_info, get_system_times): New functions.
2382 (buf_next, buf_prev, sample_system_load, getavg): New subroutines.
2383 (getloadavg): Rewrite using GetSystemTimes and GetNativeSystemInfo.
2384 (globals_of_w32): Initialize g_b_init_get_native_system_info,
2385 g_b_init_get_system_times, and num_of_processors.
2386
0a3472c7
JR
23872009-07-03 Jason Rumney <jasonr@gnu.org>
2388
2389 * w32term.c (w32_initialize): Use standard types.
2390
80904120
EZ
23912009-07-03 Eli Zaretskii <eliz@gnu.org>
2392
2393 * dired.c (Ffile_attributes): Decode user and group names by the
2394 locale's encoding. (Bug#3443)
2395
6978862d
DN
23962009-07-03 Dan Nicolaescu <dann@ics.uci.edu>
2397
f8d23104
DN
2398 * sysdep.c (sys_suspend): Remove USG_JOBCTRL #ifdef, unused.
2399 (mkdir): Remove MKDIR_PROTOTYPE #ifdef, unused.
2400
2401 * callproc.c (child_setup): Use #else instead of a separate #ifdef.
2402
2403 * term.c (init_tty): Remove spurious #ifdef.
2404
6978862d
DN
2405 * m/mips.h: Mention this file is also used for netbsd.
2406 * m/pmax.h: Remove file.
2407
e044e4fc
JD
24082009-07-03 Jan Djärv <jan.h.d@swipnet.se>
2409
2410 * xterm.h (struct x_display_info): Add invisible_cursor.
2411 (struct x_output): Add current_cursor.
2412
2413 * xterm.c (XTtoggle_invisible_pointer): New function.
2414 (x_define_frame_cursor): Don't define cursor if invisible or the
2415 same as before. Set current_cursor.
2416 (x_create_terminal): Set toggle_invisible_pointer_hook.
2417
2418 * xfns.c (make_invisible_cursor): New function.
2419 (x_set_mouse_color): Call make_invisible_cursor.
2420 Set current_cursor.
2421 (x_window): Set current_cursor.
2422
2423 * termhooks.h (struct terminal): Add toggle_invisible_pointer_hook.
2424
2425 * keyboard.c (command_loop_1): Call frame_make_pointer_invisible after
2426 inserting a character.
2427 (read_avail_input): Call frame_make_pointer_visible.
2428
2429 * frame.c (Vmake_pointer_invisible): New variable.
1ac9108a
SM
2430 (frame_make_pointer_invisible, frame_make_pointer_visible):
2431 New functions.
e044e4fc
JD
2432 (syms_of_frame): DEFVAR make-pointer-invisible, initialize to Qt.
2433
2434 * frame.h: Declare frame_make_pointer_invisible and
2435 frame_make_pointer_visible.
2436 (struct frame): Add pointer_invisible.
2437
574c8efa
JD
24382009-07-02 Jan Djärv <jan.h.d@swipnet.se>
2439
7b507248
JD
2440 * gtkutil.c (xg_frame_set_char_size): Do set width/height if the
2441 frame isn't visible.
2442 (xg_frame_resized): If width/height is -1, get size of window
2443 from X server.
2444
2445 * xterm.c (handle_one_xevent): Call xg_frame_resized for USE_GTK
2446 for MapNotify.
2447
835bdaa7 2448 * gtkutil.c (xg_frame_set_char_size): Do not set pixel width/height
31fd7c5c 2449 here or call change_frame_size. Just call flush_and_sync.
1ac9108a 2450 (flush_and_sync): Reintroduce.
574c8efa 2451
3f1c6666 24522009-07-01 Jan Djärv <jan.h.d@swipnet.se>
69b16610 2453
31fd7c5c 2454 * xterm.h (struct x_display_info): Add Xatom_net_wm_state_sticky.
acd51077
JD
2455
2456 * xterm.c (x_handle_net_wm_state): Also look for sticky.
2457 (x_term_init): Initialize Xatom_net_wm_state_sticky.
2458
2459 * frame.h: Declare Qsticky.
2460
cad9ef74
JD
2461 * w32fns.c (w32_frame_parm_handlers): Set 0 for sticky.
2462
2463 * nsfns.m (ns_frame_parm_handlers): Ditto.
2464
2465 * frame.c: Declare Qsticky.
2466 (frame_parms): Add sticky.
2467
2468 * xfns.c (x_frame_parm_handlers): Let x_set_sticky handle sticky.
2469
2470 * xterm.h: Declare x_set_sticky.
2471
2472 * xterm.c (x_set_sticky): New function.
2473
69b16610
JD
2474 * gtkutil.c (xg_tool_bar_proxy_help_callback): New function.
2475 (xg_tool_bar_menu_proxy): Attach enter/leave events to
2476 xg_tool_bar_proxy_help_callback.
3f1c6666
JD
2477
2478 * emacs.c (USAGE3, standard_args): Add -mm and --maximized.
2479
2480 * frame.c: Qmaximized is new.
2481 (x_set_frame_parameters): Do not handle fullscreen specially.
2482 Only set width and height if explicitly set.
2483 (x_set_fullscreen): Handle Qmaximized.
2484 (x_set_font, x_figure_window_size): Do not handle fullscreen specially.
2485 (syms_of_frame): Initialize Qmaximized.
2486
1ac9108a
SM
2487 * frame.h (fullscreen_type): Add FULLSCREEN_MAXIMIZED.
2488 Declare Qfullwidth, Qfullheight, Qfullboth, Qmaximized.
3f1c6666
JD
2489
2490 * xterm.c (handle_one_xevent): Remove call to x_check_fullscreen
31fd7c5c
JB
2491 for Expose event. Add call to x_check_fullscreen for MapNotify event.
2492 Remove all code w.r.t. fullscreen from ConfigureNotify event. Do not
3f1c6666
JD
2493 set gravity to NorthWestGravity when USE_GTK.
2494 (set_wm_state): New function.
31fd7c5c 2495 (do_ewmh_fullscreen): Use set_wm_state. Also handle FULLSCREEN_MAXIMIZED.
3f1c6666
JD
2496 (x_handle_net_wm_state): Handle FULLSCREEN_MAXIMIZED.
2497 (x_check_fullscreen): Simplify so we only handle EMWH type of fullscreen
31fd7c5c 2498 or the case when no window manager is running. That means remove calls
3f1c6666
JD
2499 to x_real_positions and x_fullscreen_adjust.
2500
2501 * gtkutil.c (flush_and_sync, x_wm_size_hint_off): Remove.
2502 (xg_frame_set_char_size): Remove calls to x_wm_size_hint_off and
2503 flush_and_sync.
2504 (xg_height_changed): New function.
2505 (xg_create_frame_widgets): Remove call to gtk_widget_set_size_request
1ac9108a
SM
2506 and gtk_window_set_policy. Set frame gravity after parsing the
2507 geometry string.
3f1c6666
JD
2508 (xg_update_frame_menubar, free_frame_menubar)
2509 (xg_tool_bar_detach_callback, xg_tool_bar_attach_callback)
2510 (update_frame_tool_bar, free_frame_tool_bar): Call xg_height_changed.
2511 Remove calls to xg_frame_set_char_size.
2512
fd503d99
KH
25132009-07-01 Kenichi Handa <handa@m17n.org>
2514
2515 * keyboard.c (decode_keyboard_code): New function.
2516 (tty_read_avail_input): Decode the input bytes if necessary.
2517
1ac9108a
SM
2518 * coding.c (setup_coding_system):
2519 Initialize coding->carryover_bytes to 0.
fd503d99
KH
2520 (Fset_keyboard_coding_system_internal): If CODING-SYSTEM is nil,
2521 use Qno_conversion.
2522
24ed93fb
YM
25232009-07-01 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
2524
2525 * Makefile.in (SOME_MACHINE_LISP): Add ../lisp/term/common-win.elc.
2526
99061dfc
CY
25272009-06-30 Chong Yidong <cyd@stupidchicken.com>
2528
1ac9108a 2529 * xftfont.c (xftfont_open): Avoid passing NULL argument to XftLockFace.
99061dfc 2530
ff90fbde
JR
25312009-06-30 Jason Rumney <jasonr@gnu.org>
2532
2533 * w32term.c (w32_initialize): Use GetModuleHandle for library that
2534 is already loaded.
2535 Set user model ID if supported (bug#1849).
2536
5f445726
JM
25372009-06-29 Jim Meyering <meyering@redhat.com>
2538
2539 Remove useless if-before-xfree test.
2540 * nsfont.m (nsfont_close): Remove useless test.
2541 * term.c (delete_tty): Likewise.
2542 * w32.c (system_process_attributes): Likewise.
2543 * w32font.c (w32font_close): Likewise.
2544 * xfaces.c (x_free_gc): Likewise.
2545 * xselect.c (buffer): Likewise.
2546
b9607587
AS
25472009-06-28 Andreas Schwab <schwab@linux-m68k.org>
2548
2549 * process.c (send_process): Keep decoded string in a local
2550 variable and protect it from GC. (Bug#3521)
2551
89ba96f4
EZ
25522009-06-28 Eli Zaretskii <eliz@gnu.org>
2553
2554 * term.c (create_tty_output) [MSDOS]: #ifdef away.
2555 (tty_free_frame_resources) [MSDOS]: Add a DOS-specific version.
2556
098a1589
CY
25572009-06-28 Chong Yidong <cyd@stupidchicken.com>
2558
485422be
CY
2559 * xdisp.c (start_display, handle_face_prop)
2560 (move_it_vertically_backward, cursor_row_fully_visible_p)
1ac9108a
SM
2561 (redisplay_window, try_window_id, produce_image_glyph):
2562 Delete some #ifdef-ed out code chunks that are now obsolete.
485422be 2563
098a1589
CY
2564 * xterm.c (x_update_window_begin, x_new_focus_frame)
2565 (x_scroll_bar_handle_click, handle_one_xevent)
2566 (handle_one_xevent, XTread_socket, x_focus_on_frame)
2567 (x_make_frame_visible, x_make_frame_invisible)
2568 (x_wm_set_icon_pixmap, x_initialize): Delete some #ifdef-ed out
2569 code chunks that are now obsolete.
2570
78c38319
MA
25712009-06-28 Michael Albinus <michael.albinus@gmx.de>
2572
2573 * dbusbind.c (XD_SYMBOL_TO_DBUS_TYPE): Convert macro into function
2574 xd_symbol_to_dbus_type. With Solaris 2.11, it was said to compile
2575 for hours, when optimzation is enabled.
2576 (xd_signature, xd_append_arg, xd_retrieve_arg, xd_initialize)
2577 (xd_read_message): Make them static.
2578
4189ed40
CY
25792009-06-27 Chuck Blake <cblake@pdos.csail.mit.edu> (tiny change)
2580
2581 * term.c (turn_on_face): Allow simultaneously bold and dim
2582 terminal faces (Bug#3530).
2583
cd9b5e16
CY
25842009-06-27 Chong Yidong <cyd@stupidchicken.com>
2585
4e23bedb
CY
2586 * frame.c (x_get_arg): Check if dpyinfo is non-NULL.
2587
cd9b5e16
CY
2588 * xdisp.c (mouse_face_from_buffer_pos): Fix detection of
2589 truncation glyphs (Bug#3686).
2590
07cc3c35
GM
25912009-06-27 Glenn Morris <rgm@gnu.org>
2592
2593 * m/pmax.h: Restore file, with only netbsd portions.
2594
31fd7c5c 25952009-06-26 David Reitter <david.reitter@gmail.com>
25c5550f 2596
cd9b5e16 2597 * nsterm.m (keydown): Avoid infinite loop.
25c5550f 2598
42d4a64f
KH
25992009-06-26 Peter Jolly <peter@jollys.org> (tiny change)
2600
2601 * ftfont.c (get_adstyle_property): Call font_intern_prop with 1 as
2602 the arg FORCE_SYMBOL.
2603
930fe55b 26042009-06-25 Kenichi Handa <handa@m17n.org>
a71ccf3a
KH
2605
2606 * fontset.c (fontset_find_font): When a usable rfont_def is found
2607 in a fallback font-group, make it the first element of the group.
2608
57ebc3fd
CY
26092009-06-24 Chong Yidong <cyd@stupidchicken.com>
2610
2611 * emacs-icon.h: Always define gnu_xpm_bits on GTK (bug#3671).
2612
f084f942
KH
26132009-06-24 Kenichi Handa <handa@m17n.org>
2614
2615 * fontset.c (fontset_get_font_group): Return 0 if no font-group is
2616 set for C.
2617 (fontset_font): Record the availability of a font for C both in
2618 the realized fontsets of the current one and the default one.
2619
2f686c87
DN
26202009-06-23 Dan Nicolaescu <dann@ics.uci.edu>
2621
2622 * sysdep.c (child_setup_tty): Remove SIGNALS_VIA_CHARACTERS
2623 conditional, it is always defined on AIX.
2624
666e158e
MB
26252009-06-23 Miles Bader <miles@gnu.org>
2626
2627 * window.c (Vrecenter_redisplay): New variable.
2628 (syms_of_window): Initialize it.
2629 (Qtty): New extern declaration.
2630 (Frecenter): Only do redisplay if Vrecenter_redisplay requests it.
2631
c6da7cd2
JM
26322009-06-23 Jim Meyering <meyering@redhat.com>
2633
1ac9108a
SM
2634 * src/ftfont.c (setup_otf_gstring, ftfont_shape_by_flt):
2635 Use xmalloc and xrealloc (not malloc and realloc), so subsequent heap
632c2030 2636 pointer dereferences are guaranteed to be valid.
c6da7cd2 2637
678dca3d
KH
26382009-06-23 Kenichi Handa <handa@m17n.org>
2639
74d75424
KH
2640 * emacs.c (main): Call init_font ().
2641
2642 * font.h (Vfont_log): Extern it.
2643 (FONT_ADD_LOG, FONT_DEFERRED_LOG): New macros.
2644
2645 * font.c (font_sort_entities, font_list_entities)
2646 (font_matching_entity, font_open_entity)
2647 (font_close_object): Change font_add_log to FONT_ADD_LOG.
2648 (Vfont_log): Delete static.
2649 (font_log_env_checked): Delete this variable.
2650 (font_add_log): Don't check font_log_env_checked.
2651 (font_deferred_log): Check Vfont_log.
2652 (init_font): New function.
2653
678dca3d
KH
2654 * ftfont.c: Change font_add_log to FONT_ADD_LOG.
2655
2656 * w32font.c: Change font_add_log to FONT_ADD_LOG.
2657
2658 * w32uniscribe.c: Change font_add_log to FONT_ADD_LOG.
2659
2660 * xfont.c: Change font_add_log to FONT_ADD_LOG.
2661
2662 * fontset.c (fontset_font): Call FONT_DEFERRED_LOG.
2663 (face_for_char): Don't call font_deferred_log here.
2664 (font_for_char): Likewise.
2665
8a668709
CY
26662009-06-22 Chong Yidong <cyd@stupidchicken.com>
2667
9a01ee33
CY
2668 * w32term.c (x_draw_glyph_string): Use the glyph string's width
2669 rather than its background_width for drawing the overline and
2670 underline (Bug#489).
2671
2672 * xterm.c (x_draw_glyph_string): Use the glyph string's width
2673 rather than its background_width for drawing the overline and
2674 underline (Bug#489).
ec7c9926
CY
2675 (xg_default_icon_file): New variable.
2676 (syms_of_xterm): Initialize it to the Emacs SVG icon file.
2677 (x_bitmap_icon): Under GTK, use xg_default_icon_file.
9a01ee33 2678
8a668709
CY
2679 * xdisp.c (Qbefore_string, Qafter_string): Add externs.
2680 (load_overlay_strings): Remove externs.
2681 (fast_find_position): Function deleted.
2682 (mouse_face_from_buffer_pos): New function, based on
2683 fast_find_position. Correctly handle before-strings,
2684 display-strings, and after-strings (Bug#1220).
2685 (note_mouse_highlight): Use mouse_face_from_buffer_pos.
2686
4d4c02d8
CY
26872009-06-21 Chong Yidong <cyd@stupidchicken.com>
2688
1ac9108a 2689 * xdisp.c (IT_DISPLAYING_WHITESPACE): Define for !HAVE_WINDOW_SYSTEM.
4d4c02d8
CY
2690 (move_it_in_display_line_to, move_it_in_display_line_to)
2691 (display_line): Remove #ifdef HAVE_WINDOW_SYSTEM.
2692
70243478
CY
26932009-06-21 Chong Yidong <cyd@stupidchicken.com>
2694
2695 * Branch for 23.1.
2696
13087e59
JR
26972009-06-21 Jason Rumney <jasonr@gnu.org>
2698
2699 * w32term.c (keyboard_codepage): New static variable.
2700 (w32_read_socket) [WM_INPUTLANGCHANGE]: Update it.
2701 (w32_read_socket) [WM_CHAR]: Use it to decode character
2702 input (bug#3237).
2703 (w32_initialize): Initialize it.
2704 (codepage_for_locale): New function.
2705
4735b74e
KR
27062009-06-20 Ken Raeburn <raeburn@raeburn.org>
2707
2708 * process.c (status_message): Pass Faset index argument as a lisp
2709 object, so as to work with USE_LISP_UNION_TYPE.
2710
0e727afa
YM
27112009-06-19 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
2712
2713 * coding.c (Ffind_coding_systems_region_internal):
2714 Cache checked characters.
2715
cf299835
KH
27162009-06-18 Kenichi Handa <handa@m17n.org>
2717
1ac9108a 2718 * coding.c (decode_coding_iso_2022): Check MSB of bytes more rigidly.
cf299835 2719
90f20d94
AS
27202009-06-18 Andreas Schwab <aschwab@redhat.com>
2721
2722 * xdisp.c (redisplay_internal): Check that the frame is still
2723 live after redisplay of its windows.
2724 (redisplay_windows): Check that the window is still live.
2725
7f1faf1c
KH
27262009-06-17 Andreas Schwab <schwab@linux-m68k.org>
2727
2728 * coding.c (detect_coding_utf_16): Fix previous change.
2729
cc13543e
KH
27302009-06-16 Kenichi Handa <handa@m17n.org>
2731
2732 * coding.c (detect_coding_utf_16): Fix the logic of rejecting
2733 UTF-16 by checking the dispersion of Eth and Oth bytes.
2734
977b85f4
AS
27352009-06-15 Andreas Schwab <schwab@linux-m68k.org>
2736
2737 * coding.c (detect_coding_utf_16): Fix typo counting odd bytes.
2738
66bd43d1
KH
27392009-06-15 Kenichi Handa <handa@m17n.org>
2740
2741 * process.c (status_message): Fix previous change. Be sure to
2742 decode a localized string.
2743
cb5ca9c5
YM
27442009-06-15 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
2745
2746 * xterm.c (x_delete_terminal): Put previous change in #if 0 and
2747 add comment explaining why.
2748
ec7709ba 27492009-06-14 Sidney Markowitz <sidney@sidney.com>
5ee6f629 2750
ec7709ba 2751 * nsmenu.m (EmacsTooltip: setText): Set height of tooltip.
5ee6f629 2752
4b7f335c
AR
27532009-06-14 Adrian Robert <Adrian.B.Robert@gmail.com>
2754
2755 * nsfont.m (ns_attribute_value): Remove.
2756 (ns_attribute_fvalue): Incorporate code from ns_attribute_value.
2757 (ns_has_attribute): Shrink the normal range.
2758 (ns_findfonts): Don't worry about requested spec in determining
2759 need for synthItal.
e41820ee 2760 (ns_get_covering_families): Retain scriptToFamilies.
4b7f335c 2761
73b26103
SZ
27622009-06-14 Seiji Zenitani <zenitani@mac.com>
2763
2764 * xdisp.c [USE_MAC_TOOLBAR]: Remove obsolete definition for Mac Carbon.
2765
5753e4da
KH
27662009-06-11 Kenichi Handa <handa@m17n.org>
2767
2768 * xdisp.c (x_get_glyph_overhangs): Fix calculation of right
2769 overhang for the static composition case.
2770
3561b671
KH
27712009-06-11 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
2772
5753e4da
KH
2773 * xdisp.c (x_get_glyph_overhangs): Fix calculation of right
2774 overhang for the automatic composition case.
2775
3561b671
KH
2776 * xterm.c (x_compute_glyph_string_overhangs): Handle the automatic
2777 composition case.
2778
852bbd41
CY
27792009-06-10 Chong Yidong <cyd@stupidchicken.com>
2780
2781 * xdisp.c (get_next_display_element): When handling wrap-prefix
2782 and line-prefix, treat \n as a control character (bug#3502).
2783
9903d1e6
KH
27842009-06-10 Kenichi Handa <handa@m17n.org>
2785
2786 * font.c (font_parse_family_registry): Fix for one-char foundry.
2787 (font_sort_entities): Initialize prefer_prop[FONT_AVGWIDTH_INDEX].
2788
0bcbaaaa
CY
27892009-06-09 Dmitry Dzhus <dima@sphinx.net.ru> (tiny change)
2790
2791 * process.c (status_message): Fix handling of multibyte signal
2792 string (Bug#3499).
2793
40aa3f13
JM
27942009-06-09 Jim Meyering <meyering@redhat.com>
2795
1f80c7e2
CY
2796 * xfaces.c (Fx_load_color_file): Avoid array bounds error if the
2797 color name is missing.
40aa3f13 2798
72d51285
KH
27992009-06-09 Kenichi Handa <handa@m17n.org>
2800
2801 * charset.c (Fmap_charset_chars): In docstring, state clearly that
2802 FROM-CODE and TO-CODE are codepoints of CHARSET.
2803
c1d04d84
AR
28042009-06-08 Adrian Robert <Adrian.B.Robert@gmail.com>
2805
2806 * nsterm.m (ns_use_system_highlight_color): Drop, unused.
2807
28082009-06-08 Adrian Robert <Adrian.B.Robert@gmail.com>
2809
2810 Changes to support :script/:lang/:otf in NS font driver.
2811 * nsfont.m (nsfont_escape_name, nsfont_unescape_name)
2812 (nsfont_get_family, nsfont_char_width): Rename to ns_ prefix to
2813 indicate not part of font driver interface, and change callers.
2814 (ns_get_family): Remove pointless null check.
2815 (nsfont_spec_to_traits, nsfont_fmember_to_entity): Replace with
2816 ns_spec_to_descriptor, ns_descriptor_to_entity.
2817 (nsfont_trait_distance, nsfont_make_fontset_for_font): Remove.
2818 (ns_attribute_value, ns_attribute_fvalue, ns_has_attribute)
2819 (ns_spec_to_descriptor, ns_descriptor_to_entity)
2820 (ns_charset_covers, ns_lang_to_script, ns_otf_to_script)
2821 (ns_get_req_script, ns_accumulate_script_ranges)
2822 (ns_script_to_charset, ns_get_covering_families, ns_findfonts):
2823 New functions.
2824 (nsfont_list, nsfont_match): Use ns_findfonts.
2825 (nsfont_open): Use font descriptor instead of traits.
2826 (nsfont_draw): Handle "automatic" (lookup-table) compositions.
2827 (dump_glyphstring): Rename to ns_dump_glyphstring.
2828
c7eb9816
AR
2829 * nsterm.h (dump_glyphstring): Rename to ns_dump_glyphstring.
2830
c1d04d84
AR
2831 * nsfns.m (Fns_popup_font_panel): Use shared font manager.
2832
2833 * fontset.c (fontset_from_font): Remove NS-specific code.
2834
ec7709ba 28352009-06-08 Peter Jones <pjones@pmade.com> (tiny change)
c1d04d84
AR
2836
2837 * nsterm.m (ns_draw_window_cursor): Respect cursor_type for
2838 nonactive windows.
2839
31fd7c5c 28402009-06-08 Felix Mueller <felix@enqueue.eu> (tiny change)
c1d04d84 2841
1ac9108a 2842 * nsterm.m (ns_init_paths): Append path separator to INFOPATH variable.
c1d04d84 2843
68852c13 28442009-06-08 Wolfgang Lux <wolfgang.lux@gmail.com> (tiny change)
e7777236
AR
2845
2846 * keyboard.c (kbd_buffer_get_event): Null-check used_mouse_menu.
2847
6756cd1d
CY
28482009-06-07 Chong Yidong <cyd@stupidchicken.com>
2849
2850 * xdisp.c (move_it_in_display_line_to): On text-only terminals,
2851 account for the overflowing of newlines into the last glyph on the
2852 display line (Bug#3482).
2853
28bf482a
DR
28542009-06-05 David Reitter <david.reitter@gmail.com>
2855
ec7709ba
JB
2856 * nsselect.m (Fx_own_selection_internal, Fx_selection_exists_p)
2857 (Fx_selection_owner_p): Rename from Fns_own_selection_internal,
28bf482a
DR
2858 Fns_selection_exists_p, Fns_selection_owner_p.
2859
fdb55376
JR
28602009-06-03 Jason Rumney <jasonr@gnu.org>
2861
2862 * w32fns.c (x_create_tip_frame): Use the uniscribe font backend if
2863 available. (Bug#3379)
2864
05129fbe
KH
28652009-05-29 Kenichi Handa <handa@m17n.org>
2866
1ac9108a
SM
2867 * coding.c (get_translation_table):
2868 Check Venable_character_translation.
05129fbe 2869
ec7709ba 28702009-05-26 David Reitter <david.reitter@gmail.com>
15891144 2871
ec7709ba
JB
2872 * nsterm.m (ns_raise_frame): Only raise frame if visible.
2873 (x_make_frame_visible): Move frame to front rather than calling
15891144 2874 ns_raise_frame().
ec7709ba 2875 (keyDown:): Do not swallow events that aren't re-sent if frame
15891144 2876 isn't key window.
ec7709ba 2877 (drawRect:): Do not set visibility/iconified flags because
15891144
DR
2878 drawRect may be called by NSView even if the frame is hidden.
2879
ec7709ba
JB
2880 * nsfns.m (Fx_create_frame): Follow other ports in
2881 determining visibility; default to t. Ensure async_visible is set.
15891144 2882
21f73755
EZ
28832009-05-23 Eli Zaretskii <eliz@gnu.org>
2884
2885 * dired.c (Ffile_attributes): Doc fix.
2886
34001e41
CY
28872009-05-22 Chong Yidong <cyd@stupidchicken.com>
2888
2889 * m/mips.h [GNU_LINUX]: Don't define DATA_START (Bug#2685).
2890
46306a17
SM
28912009-05-21 Stefan Monnier <monnier@iro.umontreal.ca>
2892
2893 * xfont.c (xfont_list_pattern): Don't initialize xfont_scripts_cache
2894 and xfont_scratch_props.
2895 (syms_of_xfont): Do it here instead.
2896 (xfont_find_ccl_program): Delete, unused.
2897 (xfont_open): Delete unused var `i'.
2898
ef6e0694
KH
28992009-05-21 Kenichi Handa <handa@m17n.org>
2900
2901 * fontset.c (Qlatin): Don't make it static.
2902
46306a17
SM
2903 * xfont.c (xfont_chars_supported, xfont_supported_scripts):
2904 New functions.
ef6e0694
KH
2905 (xfont_scripts_cache, xfont_scratch_props): New variables.
2906 (Qlatin, Vscalable_fonts_allowed): Extern it.
46306a17
SM
2907 (xfont_list_pattern): Argument changed. Callers changed.
2908 Check Vscalable_fonts_allowed. Check the support of a script.
ef6e0694
KH
2909 (xfont_list): Don't reject a font spec with :script property.
2910 (xfont_has_char): Fix setting of encoding.
2911 (syms_of_xfont): Staticpro and initialize xfont_scripts_cache and
2912 xfont_scratch_props.
2913
29142009-05-19 Kenichi Handa <handa@m17n.org>
2915
46306a17 2916 * font.c (font_sort_entities): Rename from font_sort_entites.
ef6e0694
KH
2917 Callers changed.
2918
29192009-05-18 Kenichi Handa <handa@m17n.org>
2920
2921 * font.c (font_find_for_lface): Copy SPEC's FONT_TYPE too.
2922
ac71ced7
SM
29232009-05-19 Stefan Monnier <monnier@iro.umontreal.ca>
2924
2925 * frame.c (do_switch_frame) [NS_IMPL_COCOA]: Don't raise any window.
2926 (delete_frame) [NS_IMPL_COCOA]: Instead, do it here.
2927
1c6d1051
YM
29282009-05-19 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
2929
2930 * xterm.c (x_delete_display): Don't call XrmDestroyDatabase here.
2931 (x_delete_terminal): Dissociate resource database from display and
2932 then call XrmDestroyDatabase before closing display.
2933
9b9b779c
AR
29342009-05-18 Adrian Robert <Adrian.B.Robert@gmail.com>
2935
2936 * nsterm.m (ns_read_socket): Remove unused variable.
1564e649
AR
2937 * frame.c (do_switch_frame): Under NS_IMPL_COCOA section, check
2938 whether selected frame is viable before raising it (based on patch
2939 by David Reitter), and improve commentary.
2940 * nsfont.m (nsfont_make_fontset_for_font): Avoid a compiler warning.
9b9b779c 2941
cccd42d5
KH
29422009-05-15 Kenichi Handa <handa@m17n.org>
2943
2944 * font.c (Ffont_spec): Check arguments.
2945
337fbd17
CY
29462009-05-14 Chong Yidong <cyd@stupidchicken.com>
2947
2948 * xfaces.c (tty_supports_face_attributes_p): Recognize unspecified
2949 weight when testing attributes (Bug#3282).
2950
47a6002f
JD
29512009-05-11 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
2952
2953 * gtkutil.c (xg_frame_set_char_size): Set frame pixel width/height to
2954 what we expect to get in the next ConfigureNotify event.
2955
9cb363db
YM
2956 * xftfont.c (xftfont_open): Make sure that Xrender extension is added
2957 before Xft one (Bug#1696).
2958
b9126609
CY
29592009-05-07 David Reitter <david.reitter@gmail.com>
2960
2961 * nsfns.m (Fx_display_planes): Compute bitplanes using
2962 NSBitsPerPixelFromDepth (Bug#3207).
2963
27a69fd9
CY
29642009-05-10 Chong Yidong <cyd@stupidchicken.com>
2965
2966 * editfns.c (Ftranspose_regions): Doc fix (Bug#3248).
2967
00f37552
TTN
29682009-05-10 Ulrich Mueller <ulm@gentoo.org>
2969
2970 * s/gnu-linux.h: Make GCPROs and UNGCPRO no-ops also on SuperH.
2971
2d82a920
DR
29722009-05-07 David Reitter <david.reitter@gmail.com>
2973
ec7709ba
JB
2974 * nsterm.m (ns_dumpglyphs_stretch, ns_dumpglyphs_image):
2975 Respect mouse face background.
2d82a920 2976
46b0d52d
DR
29772009-05-07 David Reitter <david.reitter@gmail.com>
2978
ec7709ba
JB
2979 * nsterm.m (note_mouse_movement, ns_frame_up_to_date):
2980 Mouse movement/highlight: bracket drawing operations
46b0d52d
DR
2981 in ns_update_begin and ns_update_end.
2982
ce1b23bb
SM
29832009-05-06 Stefan Monnier <monnier@iro.umontreal.ca>
2984
5996e1b7
SM
2985 * nsfns.m (ns_get_screen): Rewrite.
2986 Don't presume selected-frame is of type `ns'.
2987
ba98e3a0
SM
2988 * font.c (font_update_drivers): Sanity fallback to avoid disabling
2989 all drivers.
2990
ce1b23bb
SM
2991 * nsterm.m (-windowDidResize:): Avoid inf-loop under GNUStep.
2992
bcda200f
YM
29932009-05-06 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
2994
2995 * keyboard.h (add_user_signal): Fix typo in extern.
2996
2997 * lisp.h (add_user_signal): Remove extern.
2998
2999 * unexelf.c (unexec): Consider a section to precede the .bss section
3000 if its addresses overlap that of .bss.
3001 (unexec) [NS_IMPL_GNUSTEP]: Copy ObjC-related data from old file
3002 instead of dumping process.
3003
864660a2
SM
30042009-05-06 Stefan Monnier <monnier@iro.umontreal.ca>
3005
3006 * keyboard.c (syms_of_keyboard): Staticpro pending_funcalls.
3007
50da4e56
SM
30082009-05-04 Stefan Monnier <monnier@iro.umontreal.ca>
3009
3010 * Makefile.in (ctagsfiles1, ctagsfiles2): Include ObjC files in TAGS.
3011
51520a1a
DN
30122009-05-02 Dan Nicolaescu <dann@ics.uci.edu>
3013
3014 * xterm.c (x_handle_net_wm_state): Move declaration of lval before
3015 any statements.
3016
409ea3a1
AS
30172009-05-02 Andreas Schwab <schwab@linux-m68k.org>
3018
59c4c60f
AS
3019 * process.c (read_process_output): Make sure the current buffer is
3020 always restored.
3021
409ea3a1
AS
3022 * coding.c (record_conversion_result): Don't modify
3023 Vlast_code_conversion_error for successful result.
3024 (alloc_destination): Don't clobber conversion result. (Bug#1650)
3025
56f00ed2
KH
30262009-05-01 Emanuele Giaquinta <emanuele.giaquinta@gmail.com> (tiny change)
3027
3028 * charset.c (load_charset): Reformat X==Y==Z to (X==Y)==Z.
896b1cc9 3029 (load_charset_map): Remove unnecessary code.
56f00ed2 3030
4491c9d2
DR
30312009-04-30 David Reitter <david.reitter@gmail.com>
3032
35f5b128 3033 * nsterm.m (convert_ns_to_X_keysym): Define function keys f16
4491c9d2
DR
3034 through f24.
3035
6970f632
CY
30362009-04-30 Chong Yidong <cyd@stupidchicken.com>
3037
3038 * xfaces.c (face_at_buffer_position): New arg base_face_id.
3039
3040 * xdisp.c (handle_face_prop): Pass base_face_id of iterator to
3041 face_at_buffer_position.
3042 (face_before_or_after_it_pos, get_next_display_element)
3043 (note_mouse_highlight): Update face_at_buffer_position call.
3044
3045 * term.c (term_mouse_highlight):
3046 * msdos.c (IT_note_mouse_highlight):
3047 * fontset.c (Finternal_char_font):
35f5b128 3048 * font.c (font_at, font_range): Update face_at_buffer_position call.
6970f632
CY
3049
3050 * dispextern.h (face_at_buffer_position): Update prototype.
3051
0c616f63
KH
30522009-04-30 Kenichi Handa <handa@m17n.org>
3053
35f5b128 3054 * fontset.c (fontset_find_font): Check if rfont_def is Qnil or not.
0c616f63 3055
ad3aaf33
AS
30562009-04-29 Andreas Schwab <schwab@linux-m68k.org>
3057
3058 * callproc.c (Fcall_process): Fix GC protection. Make sure
3059 current buffer is always restored.
3060
c3c963a0
YM
30612009-04-29 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
3062
3063 * atimer.c (init_atimer): Also clear stopped_atimers.
3064
3065 * keyboard.c (init_keyboard) [POLL_FOR_INPUT]: Reset poll_timer.
3066
7e3386cb
YM
3067 * process.c (create_process): Clean up merger residues of
3068 2008-07-17 change.
3069
91f68422
CY
30702009-04-29 Ulrich Mueller <ulm@gentoo.org>
3071
3072 * lread.c (Vread_circle): New variable.
3073 (read1): Disable recursive read if Vread_circle is nil.
3074
24b34550
KH
30752009-04-29 Kenichi Handa <handa@m17n.org>
3076
3077 * fontset.h (set_default_ascii_font): Delete extern.
3078
3079 * fontset.c (set_default_ascii_font): Delete this unused function.
3080
3081 * frame.c (x_set_font): When ARG is a font-object, check if the
3082 font-object matches with the ASCII font-spec of the frame's
9c358bda 3083 fontset. If not, create a new fontset for the frame. (Bug #3075)
24b34550 3084
77bf07e1
AS
30852009-04-28 Andreas Schwab <schwab@linux-m68k.org>
3086
3087 * fns.c (Flocale_info): Protect vector from GC during decoding.
3088
3089 * process.c (Fstart_process): Protect argv strings from GC during
3090 encoding.
3091
2c55aacf
AS
30922009-04-27 Andreas Schwab <schwab@linux-m68k.org>
3093
3094 * sysdep.c: Include <ctype.h>.
3095
b892d3c9
DR
30962009-04-27 David Reitter <david.reitter@gmail.com>
3097
35f5b128 3098 * nsfont.m (nsfont_open): Remove unused variable shrink.
b892d3c9
DR
3099 Remove commented-out code.
3100
9d0644c4
JB
31012009-04-26 Johan Bockgård <bojohan@gnu.org>
3102
3103 * keyboard.c (syms_of_keyboard) <input-decode-map>: Doc fix.
3104
b7053016
JR
31052009-04-25 Jason Rumney <jasonr@gnu.org>
3106
3107 * w32font.c (clear_cached_metrics): Remove, unused since 2008-08-02.
3108
4e8231f3
YM
31092009-04-25 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
3110
3111 * fringe.c (init_fringe_bitmap) [HAVE_X_WINDOWS && WORDS_BIG_ENDIAN]:
3112 Swap bytes in short integer if fringe bitmap width > 8.
3113
493dcf2c
KH
31142009-04-23 Kenichi Handa <handa@m17n.org>
3115
3116 * xfaces.c (Fx_list_fonts): If a font size is specified in
3117 PATTERN, set it in returned scalable fonts.
3118
401e9e57
CY
31192009-04-22 Chong Yidong <cyd@stupidchicken.com>
3120
708e05dc
CY
3121 * keyboard.c (Fset_input_meta_mode): Doc fix.
3122
3123 * dispnew.c (Fsend_string_to_terminal): Doc fix.
3124
1ac9108a 3125 * data.c (Fterminal_local_value, Fset_terminal_local_value): Doc fixes.
708e05dc
CY
3126
3127 * coding.c (Fterminal_coding_system): Doc fix.
3128
3129 * xfns.c (Fx_display_grayscale_p, Fx_display_pixel_width)
3130 (Fx_display_pixel_height, Fx_display_planes)
3131 (Fx_display_color_cells, Fx_server_max_request_size)
3132 (Fx_server_vendor, Fx_server_version, Fx_display_screens)
3133 (Fx_display_mm_height, Fx_display_mm_width)
3134 (Fx_display_backing_store, Fx_display_visual_class)
1ac9108a
SM
3135 (Fx_display_save_under, Fx_close_connection, Fx_synchronize):
3136 Doc fixes, replacing "terminal id" with "terminal object".
708e05dc
CY
3137 (check_x_display_info): Handle terminal objects instead of
3138 terminal ids.
3139
401e9e57
CY
3140 * term.c (Ftty_display_color_p, Ftty_display_color_cells)
3141 (Ftty_type, Fcontrolling_tty_p, Ftty_no_underline, Fsuspend_tty)
1ac9108a
SM
3142 (Fresume_tty, Vsuspend_tty_functions, Vresume_tty_functions):
3143 Doc fixes, replacing "terminal id" with "terminal object".
401e9e57 3144
df80c7f0
KH
31452009-04-21 Kenichi Handa <handa@m17n.org>
3146
5a8f12af 3147 * font.c (font_load_for_lface): Cancel previous change (bug#2994).
c0a6070d 3148 (font_score): Check AVGWIDTH too.
908567ef 3149
df80c7f0
KH
3150 * coding.c (decode_coding_utf_16): Reduce charbuf_end for the
3151 worst case.
1ac9108a
SM
3152 (decode_coding_sjis, decode_coding_big5, decode_coding_charset)
3153 (decode_coding_emacs_mule, decode_coding_iso_2022): Likewise.
df80c7f0 3154
705af33f
JR
31552009-04-19 Jason Rumney <jasonr@gnu.org>
3156
3157 The following changes fix Bug#3005 for wide glyphs on each platform,
b71ac3dd 3158 without reintroducing Bug#1258 for stretch glyphs.
705af33f
JR
3159
3160 * xterm.c (x_draw_bar_cursor): Limit cursor width differently for
3161 BAR_CURSOR and HBAR_CURSOR. Calculate width of HBAR_CURSOR using
3162 get_phys_cursor_geometry.
3163
b71ac3dd 3164 * w32term.c (x_draw_bar_cursor): Limit cursor width differently
705af33f
JR
3165 for BAR_CURSOR and HBAR_CURSOR. Calculate width of HBAR_CURSOR
3166 using get_phys_cursor_geometry.
3167
3168 * nsterm.m (ns_draw_window_cursor): HBAR_CURSOR width already
3169 correctly calculated.
3170
dc2933eb
JD
31712009-04-19 Jan Djärv <jan.h.d@swipnet.se>
3172
1ac9108a
SM
3173 * gtkutil.c (xg_tool_bar_menu_proxy, update_frame_tool_bar):
3174 Use G_CALLBACK instead of GTK_SIGNAL_FUNC which is deprecated.
dc2933eb
JD
3175 (xg_initialize): Use g_type_class_ref instead of gtk_type_class which
3176 is deprecated.
3177
973e7849
AS
31782009-04-18 Andreas Schwab <schwab@linux-m68k.org>
3179
3180 * font.c (font_put_frame_data): Use xfree instead of free.
3181
314d66f4
JB
31822009-04-17 Juanma Barranquero <lekktu@gmail.com>
3183
3184 * w32font.c (Qja, Qko): Remove declarations.
3185 (syms_of_w32font): Don't DEFSYM them.
3186
cf702558
CY
31872009-04-17 Chong Yidong <cyd@stupidchicken.com>
3188
3189 * font.c (Qja, Qko): Move definitions here from ftfont.c.
3190
3191 * font.h (Qja, Qko): Extern them.
3192
3193 * ftfont.c (Qja, Qko): Remove declarations.
3194
3195 * xfont.c (Qja, Qko): Remove declarations.
3196
b50504f5
KH
31972009-04-17 Kenichi Handa <handa@m17n.org>
3198
bde25748
KH
3199 * editfns.c (Ftranslate_region_internal): Use Fconcat to make a
3200 string from a vector to handle Latin-1 characters correctly.
3201
b50504f5
KH
3202 * ftfont.c (ftfont_pattern_entity): Return a newly allocated
3203 entity even if the cache hits.
3204
f4646fff
AS
32052009-04-16 Andreas Schwab <schwab@linux-m68k.org>
3206
3207 * search.c (boyer_moore): Use zero as marker value for a possible
6340c70e 3208 match instead of depending on overflow behavior. (Bug#2844)
f4646fff 3209
e7deaab0
AS
3210 * search.c: Use EMACS_INT for buffer positions. Add prototypes.
3211 * lisp.h: Adjust prototypes.
3212
0a0e7d49
CY
32132009-04-16 Chong Yidong <cyd@stupidchicken.com>
3214
3215 * keyboard.c (adjust_point_for_property): Disable 2009-02-12
3216 change (Bug#3003).
3217
3c908a57
KH
32182009-04-16 Kenichi Handa <handa@m17n.org>
3219
1ac9108a 3220 * xfont.c (xfont_has_char): Special handling of `ja' and `ko' adstyle.
bd0af90d
KH
3221
3222 * xftfont.c (xftfont_has_char): Special handling of `ja' and `ko'
3223 adstyle.
3224
3225 * ftfont.c (Qja, Qko): Don't make them static.
3226 (enum ftfont_cache_for): New enum.
3227 (fc_charset_table): Undo the previous change.
3228 (ftfont_get_latin1_charset): Delete it.
1ac9108a
SM
3229 (ftfont_pattern_entity): Check cache by ftfont_lookup_cache.
3230 Set FONT_SIZE_INDEX of the entity to 0 for a scalable font. For a
bd0af90d
KH
3231 non-scarable font, try to get AVERAGE_WIDTH.
3232 (ftfont_lookup_cache): Argument FOR-FACE is changed to CACHE_FOR.
3233 Change ft_face_cache from a list of a hash-table. Don't check
3234 `ja' and `ko' adstyle here.
3235 (ftfont_get_fc_charset): Call ftfont_lookup_cache with
3236 FTFONT_CACHE_FOR_CHARET.
3237 (ftfont_get_charset): Undo the previous change.
1ac9108a 3238 (ftfont_open): Call ftfont_lookup_cache with FTFONT_CACHE_FOR_FACE.
bd0af90d
KH
3239 (ftfont_close): Likewise.
3240 (ftfont_has_char): Special handling of `ja' and `ko' adstyle.
3241
3242 * font.c (font_sort_entites): Change the meaning of the arg
3243 BEST-ONLY. Don't optimize for VEC of lenght 1.
3244 (font_select_entity): Just return the value of font_sort_entites.
3245
3246 * xfaces.c (merge_face_vectors): Reflect font properties in
3247 to[LFACE_FONT_INDEX] to the other face attributes. Don't call
3248 font_clear_prop if a face attribute doesn't change.
3249
3c908a57
KH
3250 * charset.h (charset_ksc5601): Extern it.
3251
3252 * charset.c (charset_ksc5601): New variable.
3253 (Fdefine_charset_internal): Set charset_ksc5601.
3254 (init_charset_once): Initialize charset_ksc5601 to -1.
3255
d65859c3
DN
32562009-04-15 Dan Nicolaescu <dann@ics.uci.edu>
3257
3258 * fileio.c (history_delete_duplicates): Remove unused declaration.
3259
3260 * callint.c (history_delete_duplicates): New declaration.
3261 (Fcall_interactively): Remove command history duplicates when
3262 history_delete_duplicates is true.
3263
3ba010e5
EZ
32642009-04-14 Eli Zaretskii <eliz@gnu.org>
3265
3266 * buffer.c (syms_of_buffer) <line-spacing>: Doc fix.
3267
06f19b91
KH
32682009-04-14 Kenichi Handa <handa@m17n.org>
3269
3270 * font.c (Ffont_info): Fix docstring. Fix the second element of
3271 the returned value (bug#2949).
3272
2cce8bfc
CY
32732009-04-14 Chong Yidong <cyd@stupidchicken.com>
3274
3275 * xdisp.c (Vwrap_prefix, Vline_prefix): Reflow docstrings.
3276
d156542d
KH
32772009-04-14 Kenichi Handa <handa@m17n.org>
3278
3279 * xfont.c (xfont_has_char): The font has C if C is ASCII and the
3280 encoding charset is ascii_compatible.
3281
3282 * charset.c (Fdefine_charset_internal): Make charset
3283 ascii-compatible if the method is CHARSET_METHOD_OFFSET, the
3284 code_offset is 0, and covers all ASCII characters.
3285
86fa089e
SM
32862009-04-13 Stefan Monnier <monnier@iro.umontreal.ca>
3287
3288 * nsselect.m (symbol_to_nsstring, clean_local_selection_data)
3289 (ns_string_to_pasteboard_internal):
3290 * nsmenu.m (process_dialog):
3291 * nsimage.m (ns_load_image): Use SDATA and ASET where appropriate.
3292 * nsfont.m (nsfont_open): Use XHASH to make it compile with LISP_UNION.
3293 * lisp.h (Fx_load_color_file): Declare.
3294
a8a3728b
KH
32952009-04-13 Kenichi Handa <handa@m17n.org>
3296
1ac9108a 3297 * font.c (font_delete_unmatched): Preserve the order of list elements.
a8a3728b
KH
3298 (font_select_entity): Suppress the code to optimize for the same
3299 kind of fonts.
3300 (font_load_for_lface): Get a font that supports at least ASCII
3301 characters.
3302
3303 * ftfont.c (Qja, Qko): New variables.
3304 (fc_charset_table): Delete uniquifier data for iso8859-1.
3305 (ftfont_get_latin1_charset): New function.
3306 (get_adstyle_property): New function.
3307 (ftfont_pattern_entity): Set FONT_ADSTYLE_INDEX of entity for
3308 bitmap fonts.
3309 (ftfont_lookup_cache): Handle the case that KEY is a font-entity.
3310 Delete iso-8859-1 range from the charset of fonts whose adstyle is
3311 `ko' or `ja'.
3312 (ftfont_get_fc_charset): Call ftfont_lookup_cache with ENTITY.
1ac9108a 3313 (ftfont_get_charset): For iso8859-1, call ftfont_get_latin1_charset.
a8a3728b
KH
3314 (ftfont_list): Don't refuse a font spec with non-nil `adstyle'
3315 property.
3316 (ftfont_open): Call ftfont_lookup_cache with ENTITY.
3317 (syms_of_ftfont): DEFSYM Qja and Qko.
3318
483670b5
KH
33192009-04-09 Kenichi Handa <handa@m17n.org>
3320
12b55765
KH
3321 * charset.c (map_charset_chars): For a charset of `superset'
3322 method, fix calculation of code range.
3323
483670b5
KH
3324 * font.c (font_put_extra): If VAL is nil, delete the slot for PROP
3325 from the list of extra properties.
3326 (font_clear_prop): Be sure to delete `:name' font property.
3327
57d3b93b
KH
33282009-04-08 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
3329
b4b2c2ca
YM
3330 * dispnew.c (redraw_overlapping_rows): Fix detection of
3331 overlapping for topmost and bottommost rows.
3332
1ac9108a 3333 * ftfont.c (ftfont_text_extents): Fix calculation of metrics->descent.
57d3b93b 3334
472c3609
JR
33352009-04-06 Jason Rumney <jasonr@gnu.org>
3336
3337 * frame.c (x_set_font): Avoid C99 mid-block variable declaration.
3338
ab193662
KH
33392009-04-06 Kenichi Handa <handa@m17n.org>
3340
3341 * ftxfont.c (ftxfont_draw_backgrond): Fix args to XFillRectangle.
3342
3343 * xftfont.c (xftfont_open): Fix setting font->underline_thickness.
3344
0c26f026
KH
33452009-04-06 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
3346
3347 * ftfont.c (ftfont_open): Fix checking of the return value of
3348 FT_Load_Char. Fix setting font->underline_thickness.
3349
e173bbce
CY
33502009-04-04 Chong Yidong <cyd@stupidchicken.com>
3351
3352 * terminal.c (Fterminal_name, Fdelete_terminal, Fterminal_name)
3353 (Fterminal_parameters, Fterminal_parameter)
3354 (Fset_terminal_parameter): In doc string, refer to terminal
3355 objects rather than terminal ids.
3356
693a2698
EZ
33572009-04-04 Eli Zaretskii <eliz@gnu.org>
3358
3359 * dosfns.c (system_process_attributes) [SYSTEM_MALLOC]: Don't call
3360 ret_lim_data. (Bug#2867)
3361
d5221487
CY
33622009-04-03 Chong Yidong <cyd@stupidchicken.com>
3363
3364 * term.c (produce_stretch_glyph): Reduce width of stretch glyphs
3365 so they don't get wider than the window, matching 2006-01-23
3366 change to the partner function in xdisp.c (Bug#2800).
3367
223509a3
KH
33682009-04-03 Kenichi Handa <handa@m17n.org>
3369
3370 * print.c (print_object): Make each lowest sub_char_table start a
3371 new line (Bug#2866).
3372
74fcd0b1
KH
33732009-04-02 Kenichi Handa <handa@m17n.org>
3374
3375 * fontset.c (fontset_font): Record no-font when a fontset
3376 explicitly tells not to try another font-specs.
3377
c542407d
SM
33782009-03-30 Pierre Poissinger <pierre.poissinger@gmail.com> (tiny change)
3379
3380 * charset.c (map_charset_for_dump): Add missing UNGCPRO.
3381
e3869731
KH
33822009-03-30 Kenichi Handa <handa@m17n.org>
3383
d8d2f142
KH
3384 * fontset.c (fontset_from_font): Specify only registry in a
3385 font-spec for all characters supported by that registry.
3386
e3869731
KH
3387 * ftfont.c: Fix previous change. Define ftfont_variation_glyphs
3388 even if HAVE_M17N_FLT is not defined.
3389
5da5f805
CY
33902009-03-29 Sebastian Rose <sebastian_rose@gmx.de> (tiny change)
3391
3392 * ftfont.c: Conditionalize prototyping and use of
3393 ftfont_variation_glyphs.
3394
ab226c50
SM
33952009-03-28 Stefan Monnier <monnier@iro.umontreal.ca>
3396
9628fed7
SM
3397 * frame.c (delete_frame): Work around compiler bug.
3398
3399 * editfns.c (general_insert_function): Adjust to insdel.c changes.
3400 * insdel.c (prepare_to_modify_buffer, signal_before_change):
3401 Some more EMACS_INT.
3402 * lisp.h (copy_text, count_size_as_multibyte): Fix last change.
3403
3404 * xdisp.c (dump_glyph): Fix typo.
3405
ae19ba7c
SM
3406 * insdel.c (move_gap, move_gap_both, gap_left, gap_right)
3407 (adjust_markers_gap_motion, adjust_markers_for_delete)
3408 (adjust_markers_for_insert, adjust_point)
3409 (adjust_markers_for_replace, make_gap_larger, make_gap_smaller)
3410 (make_gap, copy_text, count_size_as_multibyte, insert)
3411 (insert_and_inherit, insert_before_markers)
3412 (insert_before_markers_and_inherit, insert_1)
3413 (count_combining_before, count_combining_after, insert_1_both)
3414 (insert_from_string, insert_from_string_before_markers)
3415 (insert_from_string_1, insert_from_gap, insert_from_buffer)
3416 (insert_from_buffer_1, adjust_after_replace)
3417 (adjust_after_replace_noundo, adjust_after_insert, replace_range)
3418 (replace_range_2, del_range, del_range_1, del_range_byte)
3419 (del_range_both, del_range_2, modify_region)
3420 (prepare_to_modify_buffer, signal_before_change)
3421 (signal_after_change, Fcombine_after_change_execute): Use EMACS_INT
3422 for buffer positions and sizes.
3423 * lisp.h: Adjust prototypes accordingly.
3424
3425 * fileio.c (adjust_markers_for_delete): Move declaration to lisp.h.
3426 (non_regular_inserted, non_regular_nbytes, read_non_regular)
3427 (Finsert_file_contents): Use EMACS_INT for buffer positions.
3428
ab226c50
SM
3429 * fileio.c (Finsert_file_contents): Don't limit size to INT_MAX/4.
3430
46dfb8fb
JD
34312009-03-27 Jan Djärv <jan.h.d@swipnet.se>
3432
3433 * frame.c (x_set_font): If the fullscreen property is non-nil, adjust
3434 lines and columns so we keep the same pixel height and width.
3435
3436 * xterm.c (handle_one_xevent): Call x_handle_net_wm_state if
3437 the property _NET_WM_STATE has changed.
46dfb8fb
JD
3438 (x_handle_net_wm_state): New function to update frame parameter
3439 fullscreen.
3440 (x_term_init): Initialize atoms for _NET_WM_STATE.
3441
3442 * xterm.h (struct x_display_info): Add atoms for _NET_WM_STATE.
3443
d347e494
SM
34442009-03-27 Kevin Ryde <user42@zip.com.au>
3445
3446 * keyboard.c (tty_read_avail_input): Don't treat a -1 return from
3447 Gpm_GetEvent as an error that justifies closing the filedescriptor.
3448 * term.c (close_gpm): Get the filedescriptor as a (new) parameter.
3449 (Fgpm_mouse_stop): Pass that new parameter.
3450 * termhooks.h (close_gpm): Adjust prototype.
3451
84db11d6
SM
34522009-03-26 Stefan Monnier <monnier@iro.umontreal.ca>
3453
c95a5008
SM
3454 * lisp.h (Fx_focus_frame): Declare.
3455
84db11d6
SM
3456 * callint.c (Fcall_interactively): For '^' just delegate the work to
3457 handle-shift-selection.
3458 (syms_of_callint): Move declaration of shift-select-mode to simple.el.
3459
0a1958d6
CY
34602009-03-24 Chong Yidong <cyd@stupidchicken.com>
3461
0bfdff23
CY
3462 * editfns.c (Ffloat_time): Doc fix (Bug#2768).
3463
0a1958d6
CY
3464 * data.c (Qinteractive_form): New variable.
3465 (Finteractive_form): Use it.
3466
3467 * eval.c (Fcommandp): Use Qinteractive_form.
3468
58aec0d6
JR
34692009-03-24 Jason Rumney <jasonr@gnu.org>
3470
3471 * fileio.c (Fsubstitute_in_file_name): Always work on a copy.
3472 Calculate total size precisely. Decode environment variables
3473 before substituting. (Bug#38)
3474
553dd618
KH
34752009-03-24 Kenichi Handa <handa@m17n.org>
3476
3477 * font.c (find_font_encoding): Return Qnil for unsupported
639239cf 3478 encoding (Bug#2722).
553dd618 3479
c39ea606
JD
34802009-03-23 Jan Djärv <jan.h.d@swipnet.se>
3481
3482 * gtkutil.c (xg_display_open): Assign a value to gdpy_def, check
3483 that gdpy is set.
3484
bc9b2b5e
AM
34852009-03-22 Alan Mackenzie <acm@muc.de>
3486
3487 * callint.c (Finteractive): Clarify the doc string - even
3488 promptless elements need \n separators.
3489
9f995a76
JR
34902009-03-22 Jason Rumney <jasonr@gnu.org>
3491
3492 * w32term.c (syms_of_w32term): Doc fix for
3493 x-use-underline-position-properties.
3494
22749e9a
EZ
34952009-03-21 Eli Zaretskii <eliz@gnu.org>
3496
3497 * w32.c (getpwuid): Change argument type to unsigned.
3498 (struct w32_id): Change type of `rid' member to unsigned.
3499 (w32_cached_id, w32_add_to_cache, get_name_and_id): Change type of
3500 argument ID to unsigned. All callers changed.
3501 (getuid, geteuid, getgid, getegid): Change return type to unsigned.
3502
e00553bf
EZ
35032009-03-20 Eli Zaretskii <eliz@gnu.org>
3504
3505 * editfns.c (Fuser_uid, Fuser_real_uid): If UID as EMACS_INT is
3506 negative, produce a float value.
3507
3508 * dired.c (make_uid, make_gid): New functions.
3509 (Ffile_attributes): Use them to avoid negative UID and GID.
3510
f761d6b6
JB
35112009-03-20 Juanma Barranquero <lekktu@gmail.com>
3512
3513 * keyboard.c (Fcurrent_idle_time): Reflow docstring.
3514 (syms_of_keyboard) <command-hook-internal, input-method-function>:
3515 Fix typos in docstrings.
3516
d507f8d7
KH
35172009-03-19 Kenichi Handa <handa@m17n.org>
3518
3519 * fontset.c (Fset_fontset_font): When a spec of ASCII font is
f761d6b6
JB
3520 changed, use font_load_for_lface to get a new font object.
3521 Call free_realized_fontset after handling ASCII font change.
d507f8d7
KH
3522
3523 * frame.c (x_set_font): Handle the case that ARG is a cons.
3524
c68845e0
GM
35252009-03-19 Glenn Morris <rgm@gnu.org>
3526
3527 * fileio.c (Fsubstitute_in_file_name): Doc fix.
3528
bfa49dd1
CY
35292009-03-19 Chong Yidong <cyd@stupidchicken.com>
3530
3531 * indent.c (Fvertical_motion): Undo 2005-01-19 change (Bug#2694).
3532
8458d4c1
KH
35332009-03-19 Kenichi Handa <handa@m17n.org>
3534
3535 * charset.c (load_charset_map_from_file): When a mapfile can't be
3536 loaded, signal an error.
3537
78e7d1fe
EZ
35382009-03-18 Eli Zaretskii <eliz@gnu.org>
3539
3540 * dired.c (Ffile_attributes): Make sure UID and GID are always
3541 positive, even if the value is too large for a positive EMACS_INT.
3542 Doc fix.
3543
3544 * editfns.c (Fuser_login_name): Support float arguments. Doc fix.
3545
5da9fdfa
YM
35462009-03-18 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
3547
3548 * xmenu.c (xdialog_show): Move Fredisplay call ...
3549 (Fx_popup_dialog): ... here.
3550
7519c40d
SM
35512009-03-18 Stefan Monnier <monnier@iro.umontreal.ca>
3552
3553 * dired.c (file_name_completion): Disable the first optimization just
3554 installed, since it is not implemented correctly.
3555
2cd298e2
SM
35562009-03-17 Stefan Monnier <monnier@iro.umontreal.ca>
3557
3558 * dired.c (file_name_completion): Check completion-ignored-extensions
c95a5008 3559 only if the entry can affect bestmatch.
2cd298e2
SM
3560 Stop the search early, as Ftry_completion already does.
3561
48d37adf
CY
35622009-03-17 Chong Yidong <cyd@stupidchicken.com>
3563
e10c9c93 3564 * minibuf.c (Vminibuffer_completion_confirm): Doc fix.
48d37adf 3565
9286b16a
CY
35662009-03-15 Chong Yidong <cyd@stupidchicken.com>
3567
3568 * keyboard.c (parse_menu_item): Don't display remappings as menu
3569 equivalent bindings (Bug#788).
3570
f7b146dc
JR
35712009-03-15 Jason Rumney <jasonr@gnu.org>
3572
3573 * w32term.h (WM_EMACS_PAINT): New message.
3574 * w32term.c (w32_read_socket): Use it instead of WM_PAINT.
3575 * w32fns.c (w32_wnd_proc): Change WM_PAINT to WM_EMACS_PAINT
3576 before passing to lisp thread. (Bug#950)
3577
f761d6b6 35782009-03-14 David Reitter <david.reitter@gmail.com>
c6c62e78 3579
d93f9575
CY
3580 * nsterm.m (ns_shutdown_properly, -terminate): Remove global state
3581 variable as it was never reset.
3582 (ns_term_init): Remove initialization of Lisp-settable defaults
3583 and ns_expand_space.
3584 (-setPanelFromDefaultValues): Remove ns_expand_space.
3585 (-showPreferencesWindow): Send new KEY_NS_SHOW_PREFS key.
3586 * nsfont.m (nsfont_open): Remove ns_expand_space, assume -0.5
c6c62e78
DR
3587 i.e. no additional spacing, similar to Carbon port.
3588
d93f9575
CY
3589 * nsterm.h: Define KEY_NS_SHOW_PREFS key.
3590 * nsfns.m (ns-popup-prefs-panel): Remove.
c6c62e78 3591
305018ec
JD
35922009-03-14 Jan Djärv <jan.h.d@swipnet.se>
3593
3594 * sound.c (alsa_configure): Remove call to deprecated
3595 snd_pcm_sw_params_set_xfer_align.
3596
f761d6b6 35972009-03-14 Stephen Berman <stephen.berman@gmx.net>
4a02423f
JD
3598
3599 * gtkutil.c (xg_tool_bar_callback): Set focus back to the frame
3600 after clicking in a detached tool bar.
3601 (xg_tool_bar_proxy_callback): Remove call to Fx_focus_frame.
3602
46e722a9
SM
36032009-03-13 Stefan Monnier <monnier@iro.umontreal.ca>
3604
348db3dd
SM
3605 * fontset.c (fontset_from_font, Ffontset_info): YAILOM (Yet another
3606 int/Lisp_Object mixup).
46e722a9 3607
a3d16f39
KH
36082009-03-13 Kenichi Handa <handa@m17n.org>
3609
3610 * fontset.c (Ffontset_info, check_fontset_name): New arg frame.
fe24f56a 3611 Handle NAME nil and t correctly. Callers changed.
a3d16f39
KH
3612 (font_def_arg, add_arg, from_arg, to_arg): Delete them.
3613 (set_fontset_font): Change ARG to a vector. Handle range_list in
3614 ARG correctly.
3615 (Fset_fontset_font): Fix the case that TARGET is both a script
fe24f56a 3616 name and charset name. Adjust the arg to set_fontset_font for
a3d16f39
KH
3617 the above change.
3618 (fontset_from_font): Fix previous change.
fe24f56a 3619 (Ffontset_info): Adjust for the 2008-07-09 change of fontset
a3d16f39
KH
3620 entry. If FONTSET is the default fontset, don't set the extra
3621 slot of the returning char-table.
3622
b066e6b6
JB
36232009-03-12 Juanma Barranquero <lekktu@gmail.com>
3624
3625 * nsfns.m (Fx_close_connection): Doc fix.
3626 (Fns_do_applescript): Reflow docstring.
3627 (Fns_hide_others, Fns_hide_emacs, Fns_convert_utf8_nfd_to_nfc)
3628 (Fx_display_pixel_width, Fx_display_pixel_height)
3629 (Fns_display_usable_bounds, Fx_display_planes, Fx_show_tip):
3630 Fix typos in docstrings.
3631 (Fns_set_alpha): Fix typos in error messages.
3632
d472514e 36332009-03-12 David Reitter <david.reitter@gmail.com>
d6220c13 3634
d472514e 3635 * termhooks.h [HAVE_NS]: Define NS_NONKEY_EVENT to be used for
d6220c13
DR
3636 non-key system events on NS. Formerly, NON_ASCII_KEYSTROKE_EVENT
3637 were used for such events.
3638
d472514e
JB
3639 * nsterm.m (newFrame, openFile, fulfillService, changeFont)
3640 (toggleToolbar, performDragOperation, runHelp): Use it.
d6220c13 3641
d472514e 3642 * keyboard.c (parse_menu_item) [HAVE_NS]: Treat new event like
d6220c13
DR
3643 NON_ASCII_KEYSTROKE_EVENT, but set used_mouse_menu.
3644
fb930676
KH
36452009-03-11 Kenichi Handa <handa@m17n.org>
3646
ff85581a
KH
3647 * font.h (font_open_by_spec): Extern it.
3648
c50b7e98
KH
3649 * font.c (font_open_by_spec): New function.
3650 (font_open_by_name): Use font_open_by_spec.
3651
fb930676
KH
3652 * frame.c (x_set_font): When ARG is a font-object, don't alter the
3653 fontset of the frame.
3654
3655 * fontset.c (Fset_fontset_font): When a font for ASCII is changed,
3656 modify the default font of frames that use this fontset.
3657 (num_auto_fontsets): New variable.
3658 (fontset_from_font): Use num_auto_fontsets to decide a fontset
3659 name. Be sure to set FONTSET_ASCII to the correct font name.
3660 (update_auto_fontset_alist): New function.
3661
df4e8455
JB
36622009-03-11 Juanma Barranquero <lekktu@gmail.com>
3663
3664 * makefile.w32-in: Update dependencies.
3665
0a375797
AR
36662009-03-06 Adrian Robert <Adrian.B.Robert@gmail.com>
3667
3668 * nsfns.m (syms_of_nsfns): Remove Qbuffered.
3669
61313fa3
SM
36702009-03-10 Stefan Monnier <monnier@iro.umontreal.ca>
3671
3672 * buffer.c (Fswitch_to_buffer): Revert part of 2008-10-21's change.
3673
b55103fb
CY
36742009-03-10 Chong Yidong <cyd@stupidchicken.com>
3675
3676 * lread.c (Feval_buffer): Doc fix.
3677
dde2559c
KH
36782009-03-09 Kenichi Handa <handa@m17n.org>
3679
3680 * charset.c (Qfile_name_handler_alist): Extern it.
3681 (load_charset_map_from_file): Temporarily bind
3682 `file-name-handler-alist' to nil while calling openp. (Bug#2435)
3683
df4e8455 36842009-03-06 Aaron Ecay <aaronecay@gmail.com> (tiny change)
340e08a4 3685
47f588bb
GM
3686 * nsterm.m (ns_draw_vertical_window_border): Draw 1 pixel wide,
3687 not two, and use NSRectFill instead of NSDrawGroove. (Bug#2352)
340e08a4 3688
4ddf94bd
AR
36892009-03-06 Adrian Robert <Adrian.B.Robert@gmail.com>
3690
4c9bdfc2
AR
3691 * nsterm.m: Include <signal.h> for SIGTERM used in ns_term_shutdown.
3692 (x_set_window_size): Change back to calculated method of setting
3693 toolbar height under Cocoa. (Bug#2546)
4ddf94bd
AR
3694 (EmacsView-windowWillUseStandardFrame:defaultFrame:): New method.
3695 (EmacsView-drawRect:): Completely shortcircuit if ns_in_resize.
3696
fe41ae9e
AR
3697 * nsfns.m (ns_appkit_version_int): Fix typo in the version macro.
3698
4c9bdfc2
AR
3699 * nsmenu.m (EmacsMenu-addItemWithWidgetValue:): Don't add
3700 accelerator in parens under GNUstep.
3701
825d0875
KH
37022009-03-06 Kenichi Handa <handa@m17n.org>
3703
3704 These changes are to detect incorrect composition sequence without
f3b3be74 3705 looking ahead the source. (Bug#2370)
825d0875
KH
3706
3707 * coding.h: Include "composite.h".
3708 (enum compisition_state): New enum.
3709 (struct compisition_status): New struct.
3710 (struct iso_2022_spec): New member cmp_status.
3711 (struct emacs_mule_spec): New struct.
3712 (struct coding_system): New members ctext_extended_segment_len and
3713 embedded_utf_8. Change the union member
3714 spec.emacs_mule_full_support to spec.emacs_mule.
3715
3716 * coding.c (CODING_ISO_CMP_STATUS): New macro.
3717 (CODING_ISO_EXTSEGMENT_LEN, CODING_ISO_EMBEDDED_UTF_8): New macros.
98a326f7 3718 (MAX_ANNOTATION_LENGTH): Define to 5.
825d0875
KH
3719 (ADD_COMPOSITION_DATA): New arg nbytes.
3720 (emacs_mule_char): New arg cmp_status.
3721 (DECODE_EMACS_MULE_COMPOSITION_CHAR): Delete it.
3722 (DECODE_EMACS_MULE_COMPOSITION_RULE_20): New arg c.
3723 (DECODE_EMACS_MULE_COMPOSITION_RULE_21): New arg c.
3724 (DECODE_EMACS_MULE_21_COMPOSITION): Delete the arg c.
3725 (DECODE_EMACS_MULE_20_RELATIVE_COMPOSITION): Likewise.
3726 (DECODE_EMACS_MULE_20_RULEBASE_COMPOSITION): Likewise.
3727 (DECODE_EMACS_MULE_COMPOSITION_START): New macro.
3728 (EMACS_MULE_COMPOSITION_END): New macro.
3729 (emacs_mule_finish_composition): New function.
3730 (EMACS_MULE_MAYBE_FINISH_COMPOSITION): New macro.
3731 (decode_coding_emacs_mule): Avoid long looking ahead while
3732 handling composition.
3733 (DECODE_COMPOSITION_RULE): Argument changed to rule and nbytes.
3734 (ENCODE_COMPOSITION_RULE): New macro.
3735 (finish_composition): New function.
3736 (MAYBE_FINISH_COMPOSITION): Call finish_composition.
3737 (DECODE_COMPOSITION_START): New implementation.
3738 (DECODE_COMPOSITION_END): Likewise.
3739 (STORE_COMPOSITION_RULE): New macro.
3740 (decode_coding_iso_2022): Avoid long looking ahead while handling
3741 composition, CTEXT extended segment, and embedded UTF-8.
3742 (setup_coding_system): For a coding of type iso-2022, reset
3743 CODING_ISO_EXTSEGMENT_LEN (coding) and
3744 CODING_ISO_EMBEDDED_UTF_8 (coding).
3745 (get_translation): Delete arguments last_block, from_nchars,
3746 to_nchars. Callers changed.
3747 (produce_chars): Don't modify charbuf. Adjusted for the change of
3748 get_translation.
98a326f7 3749 (produce_composition): Adjust for the new annotation sequence.
825d0875 3750 (handle_composition_annotation): Likewise.
98a326f7 3751 (consume_chars): Adjust for the change of get_translation.
825d0875 3752
ccbc4452
AR
37532009-03-05 Adrian Robert <Adrian.B.Robert@gmail.com>
3754
4ddf94bd 3755 * nsterm.m (ns_select): Shortcircuit if reentrant call. (Bug#2564)
ccbc4452 3756
988a7ddb
KH
37572009-03-05 Kenichi Handa <handa@m17n.org>
3758
3759 * font.c (font_select_entity): New function.
3760 (font_find_for_lface): Use font_select_entity to select a font.
3761
3762 * fontset.c (fontset_find_font): If a font found without
a8a3728b 3763 restricting to the characters C doesn't support C, try to find a
988a7ddb
KH
3764 font with C restriction.
3765
98a326f7 37662009-03-04 Nikolaj Schumacher <me@nschum.de>
2f462d73 3767
be1bce46 3768 * nsfont.m (nsfont_draw): Compare ns_antialias_text against lisp value.
2f462d73 3769
10ea2b82
JR
37702009-03-04 Jason Rumney <jasonr@gnu.org>
3771
2c93b248 3772 * w32fns.c (w32_wnd_proc): Only ignore IME messages for the
4891ba1d 3773 characters that have already been read. (Bug#2569)
2c93b248 3774
10ea2b82
JR
3775 * image.c (xbm_read_bitmap_data, png_load, svg_load_image):
3776 Log an error message if check_image_size failed.
3777 (xpm_load_image, pbm_load, jpeg_load, tiff_load, gif_load)
4891ba1d 3778 (gs_load): Mention max-image-size in size error message. (Bug#2560)
10ea2b82 3779
71a0c011
EZ
37802009-03-02 Eli Zaretskii <eliz@gnu.org>
3781
3782 * callproc.c (Fcall_process): Bind inhibit-modification-hooks to t
3783 when decoding process output.
3784
2f63bba8
RS
37852009-03-01 Richard M Stallman <rms@gnu.org>
3786
3787 * m/mips.h (DATA_SEG_BITS, XUINT, XSET): Definitions disabled.
3788
3789 * emacs.c (gdb_data_seg_bits) [USE_LSB_TAG]: Make it 0.
3790
0a9564cb
EZ
37912009-02-28 Eli Zaretskii <eliz@gnu.org>
3792
3793 * coding.c (decode_coding_utf_8, decode_coding_utf_16)
3794 (decode_coding_emacs_mule, decode_coding_iso_2022)
3795 (encode_coding_iso_2022, decode_coding_sjis, decode_coding_big5)
3796 (decode_coding_raw_text, decode_coding_charset)
3797 (setup_coding_system, decode_eol, decode_coding, consume_chars):
3798 Honor inhibit-eol-conversion. (Bug #2186)
3799
449148b3
JR
38002009-02-28 Jason Rumney <jasonr@gnu.org>
3801
3802 * coding.c (detect_coding_charset): If not checking latin extra,
3803 fail on characters between 0x80 and 0xA0. (Bug#2354)
3804
a4aee864
EZ
38052009-02-28 Eli Zaretskii <eliz@gnu.org>
3806
3807 * coding.c (detect_coding_charset): Fix change from 2008-10-21.
2a1573ff 3808 Also, check iso-latin-*, not only iso-8859-*. (Bug#2497)
a4aee864 3809
d88bee5a
GM
38102009-02-27 Glenn Morris <rgm@gnu.org>
3811
3812 * callint.c (Finteractive): Doc fix.
3813
a808f22d
KH
38142009-02-27 Kenichi Handa <handa@m17n.org>
3815
3816 * lread.c (read_escape): Signal an error for invalid \UXXXXXXXX.
3817
caf8d60c
CY
38182009-02-27 Chong Yidong <cyd@stupidchicken.com>
3819
3820 * font.c (font_style_to_value): Set value for unknown symbols to
3821 100 instead of 255.
b61137ea
CY
3822 (weight_table, slant_table, width_table): Treat "unspecified" as
3823 the default value.
caf8d60c 3824
1a0de25c
JB
38252009-02-26 Juanma Barranquero <lekktu@gmail.com>
3826
3827 * fileio.c (Fnext_read_file_uses_dialog_p): Fix typo in docstring.
3828
8fc45744
JB
38292009-02-25 Juanma Barranquero <lekktu@gmail.com>
3830
107bd7d1
JB
3831 * lread.c (Fload): Stop checking Vloads_in_progress and signal
3832 error as soon as a recursive load is detected.
8fc45744 3833
f097e223
AR
38342009-02-24 Adrian Robert <Adrian.B.Robert@gmail.com>
3835
3836 * nsterm.m (ns_ring_bell): Convert rect to window coordinates
3837 before caching.
3838
8810a12f
KH
38392009-02-24 Kenichi Handa <handa@m17n.org>
3840
3841 * fontset.c (fontset_find_font): Fix the condition for checking
3842 unavailable font.
3843
2c7d1565
GM
38442009-02-24 Glenn Morris <rgm@gnu.org>
3845
3846 * xfaces.c (Finternal_set_font_selection_order): Remove leading
3847 whitespace that confuses documentation.
3848
a20878b6
MB
38492009-02-23 Miles Bader <miles@gnu.org>
3850
3851 * process.c (Flist_system_processes, Fprocess_attributes)
3852 (syms_of_process): Rename `system-process-attributes' to
3853 `process-attributes'.
3854
b3b58c01
AS
38552009-02-22 Andreas Schwab <schwab@linux-m68k.org>
3856
1b3b981b
AS
3857 * coding.h (struct coding_system): Make safe_charsets a pointer to
3858 unsigned char.
3859 * coding.c (CODING_ISO_REQUEST): Check for safe_charsets content
3860 being 255.
3861 (SAFE_CHARSET_P): Likewise.
3862 (setup_iso_safe_charsets): Properly setup safe_charsets.
3863 (Fdefine_coding_system_internal): Likewise.
3864 (setup_coding_system): Likewise. Remove unneeded casts.
3865 (detect_coding_iso_2022): Compare Viso_2022_charset_list with
3866 CODING_ATTR_CHARSET_LIST, not CODING_ATTR_SAFE_CHARSETS. Remove
3867 unneeded casts.
3868
b3b58c01
AS
3869 * insdel.c (del_range_2): Don't modify gap contents when called
3870 from decode_coding_object. (Bug#1809)
3871
0b6f228c
CY
38722009-02-21 Chong Yidong <cyd@stupidchicken.com>
3873
3874 * data.c (syms_of_data): Define Qfont_spec, Qfont_entity, and
3875 Qfont_object.
3876 (Ftype_of): Recognize font objects.
3877
3878 * lisp.h: Define Qfont_spec, Qfont_entity, Qfont_object extern.
3879
3880 * font.c (Qfont_spec, Qfont_entity, Qfont_object): Definitions
3881 moved to data.c.
3882
52f8870b
AR
38832009-02-20 Adrian Robert <Adrian.B.Robert@gmail.com>
3884
3885 * nsterm.m (x_make_frame_invisible): Unset async_visible,
3886 async_iconified. Based on a patch by Christian Lynbech
3887 <christian.lynbech@tieto.com>.
3888 (EmacsView-windowDidMiniaturize:): Unset async_visible.
3889
7087d5e9
GM
38902009-02-20 Glenn Morris <rgm@gnu.org>
3891
3892 * syntax.c (Fskip_chars_forward): Fix doc typo.
3893
41d2ceef
CY
38942009-02-20 Chong Yidong <cyd@stupidchicken.com>
3895
3896 * keymap.c (Fkeymap_parent): Doc fix (Bug#2391).
3897
1a3b7ca6
CY
38982009-02-19 Chong Yidong <cyd@stupidchicken.com>
3899
3900 * xfns.c (Fx_create_frame): Give Xft driver a higher priority.
3901
73cce38d
KH
39022009-02-19 Kenichi Handa <handa@m17n.org>
3903
3904 * coding.c (detect_coding): Preserve coding->mode.
2bc550cb 3905 Don't overflow coding->carryover. (Bug#2370)
73cce38d 3906
a51092ee
DN
39072009-02-18 Dan Nicolaescu <dann@ics.uci.edu>
3908
3909 * m/ibmrs6000.h (ADDR_CORRECT): Restore, removed by mistake on 2008-07-23.
3910
c423ecca
KH
39112009-02-18 Kenichi Handa <handa@m17n.org>
3912
3913 * font.c (font_check_otf_features): Fix handling of `nil' element.
3914 (Ffont_spec): Describe :lang and :otf in the docstring.
3915
4c1958f4
AS
39162009-02-16 Andreas Schwab <schwab@suse.de>
3917
3918 * coding.c (Fcheck_coding_systems_region): Fix test for unibyte
3919 string.
3920
5704f39a
KH
39212009-02-16 Kenichi Handa <handa@m17n.org>
3922
3923 * coding.c (Fcheck_coding_systems_region): Fix typo; Qt -> Qnil.
a057d86a 3924 (Bug#1723)
5704f39a 3925
8f0085aa
CY
39262009-02-14 Chong Yidong <cyd@stupidchicken.com>
3927
a057d86a 3928 * dispextern.h (struct iterator_stack_entry): New line_wrap member.
8f0085aa
CY
3929
3930 * xdisp.c (push_it, pop_it): Save and restore line_wrap.
3931 (handle_line_prefix): Suppress wrapping of wrap prefixes.
3932
aff01dd9
EZ
39332009-02-14 Eli Zaretskii <eliz@gnu.org>
3934
3935 * msdos.c (MAX_SCREEN_BUF): New macro.
3936 (IT_write_glyphs): Make screen_buf[] always be MAX_SCREEN_BUF-long.
3937 Encode the entire run of glyphs sharing the same face, instead of
3938 doing that one glyph at a time (fixes a bug with displaying
3939 double-size characters).
3940
ba301db3
AR
39412009-02-13 Adrian Robert <Adrian.B.Robert@gmail.com>
3942
3943 * nsfns.m (ns-read-file-name): BLOCK_INPUT while showing dialog.
3944
3945 * nsmenu.m (pop_down_menu): Check popup_activated_flag.
3946 (ns_popup_dialog, EmacsDialogPanel-runDialogAt:): Let
a057d86a 3947 pop_down_menu do the cleanup work as it is always called. (Bug#2154)
ba301db3
AR
3948
3949 * nsfont.m (nsfont_make_fontset_for_font): For now, don't try to
a057d86a 3950 set fontset font for "mathematical-" sub-scripts. (Bug #2218)
ba301db3 3951
51d861de
SM
39522009-02-12 Stefan Monnier <monnier@iro.umontreal.ca>
3953
3954 * keyboard.c (adjust_point_for_property): Allow stopping betwen two
3955 invisible areas.
3956
7fed8996
JR
39572009-02-12 Jason Rumney <jasonr@gnu.org>
3958
631ea4fb
JR
3959 * w32font.c (check_face_name): Check for fake helv. (Bug#2275)
3960 (add_font_entity_to_list): Call check_face_name even when family
3961 is unspecified.
3962
cb4a3e42
JR
3963 * w32term.c (x_display_pixel_height, x_display_pixel_width):
3964 Release DC when finished. Use NULL window to refer to desktop.
631ea4fb 3965 (w32_term_init): Use NULL window to refer to desktop. (Bug#460)
cb4a3e42 3966
7fed8996 3967 * w32font.c (add_font_entity_to_list): Fix check for substituted
631ea4fb 3968 raster fonts. (Bug#2219)
7fed8996 3969
895416e3
KH
39702009-02-12 Kenichi Handa <handa@m17n.org>
3971
3972 * composite.c (MAX_AUTO_COMPOSITION_LOOKBACK): New macro.
3973 (composition_gstring_width): Fix handling of LGLYPH_YOFF.
3974 (autocmp_chars): Use fast_looking_at. Don't compose more
1dacf998 3975 characters than MAX_COMPOSITION_COMPONENTS.
895416e3
KH
3976 (find_automatic_composition): While looking forward and backward,
3977 check static composition. Fix where to stop looking forward.
3978 (composition_adjust_point): Fix checking of static composition.
3979 (Fcomposition_get_gstring): Pay attention to
1dacf998 3980 MAX_COMPOSITION_COMPONENTS.
895416e3
KH
3981
3982 * lisp.h (fast_looking_at): Extern it.
3983
3984 * search.c (fast_looking_at): New function.
3985
51d861de 3986 * term.c (encode_terminal_code): Adjust for the change of
895416e3
KH
3987 <struct glyph>.u.cmp.to.
3988 (append_composite_glyph): Likewise.
3989
51d861de 3990 * xdisp.c (fill_gstring_glyph_string): Adjust for the change of
895416e3
KH
3991 <struct glyph>.u.cmp.to. Check if the glyph belongs to the same
3992 composition.
51d861de 3993 (append_composite_glyph): Adjust for the change of
895416e3
KH
3994 <strcut glyph>.u.cmp.to.
3995
8510724d
JB
39962009-02-11 Juanma Barranquero <lekktu@gmail.com>
3997
3998 * casetab.c (init_casetab_once):
3999 * coding.c (ALLOC_CONVERSION_WORK_AREA):
4000 * font.c (font_update_lface):
4001 * fontset.c (Fnew_fontset):
4002 * ftfont.c (ftfont_drive_otf):
4003 * xfont.c (xfont_open):
4004 * xftfont.c (xftfont_get_xft_draw): Remove spurious semicolons.
4005
294fa707
SM
40062009-02-11 Stefan Monnier <monnier@iro.umontreal.ca>
4007
4008 * fileio.c (Fwrite_region): !NILP -> CONSP.
4009
b5bfebec
AS
40102009-02-10 Andreas Schwab <schwab@suse.de>
4011
4012 * process.c (send_process): Properly relocate pointer into data
adab88bd 4013 when using encoded data. (Bug#2272)
b5bfebec 4014
cb84a2be
KH
40152009-02-08 ARISAWA Akihiro <ari@mbf.sphere.ne.jp>
4016
4017 * coding.c (detect_coding_charset): Fix previous change.
4018
89e09428
JR
40192009-02-08 Jason Rumney <jasonr@gnu.org>
4020
4021 * w32fns.c (w32_hide_hourglass): Handle case where frame
adab88bd 4022 disappeared while hourglass was displayed. (Bug #2193)
89e09428 4023
4470a277
AS
40242009-02-07 Andreas Schwab <schwab@suse.de>
4025
4026 * unexelf.c (unexec): Fix error message.
4027
3175b12a
AR
40282009-02-07 Adrian Robert <Adrian.B.Robert@gmail.com>
4029
4030 * nsterm.m (EmacsApp-sendEvent:): Defer NSApplicationDefined event
adab88bd 4031 when modal window is active. (Bug #2152)
3175b12a
AR
4032 (applicationShouldTerminate:): Remove now-unneeded while loop
4033 around NSRunAlertPanel.
4034
4035 * nsmenu.m (popupSession): New file-global variable.
4036 (pop_down_menu): End the popupSession before closing dialog.
4037 (ns_popup_dialog): BLOCK_INPUT around dialog presentation.
4038 (EmacsDialogPanel-runDialogAt:): Don't place window (superfluous),
4039 don't query NSApp for events (just sleep instead).
4040
8434d0b8
EZ
40412009-02-07 Eli Zaretskii <eliz@gnu.org>
4042
51d861de
SM
4043 * coding.c (syms_of_coding) <translation-table-for-input>:
4044 Modify doc string to discourage use for character code unification.
8434d0b8 4045
aa82edfd
CY
40462009-02-07 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
4047
4048 * atimer.c (run_timers): Update pending_atimers.
4049
2d283c7c
CY
40502009-02-06 Chong Yidong <cyd@stupidchicken.com>
4051
eb306cab
CY
4052 * image.c (svg_load_image): Fix last change.
4053
2d283c7c
CY
4054 * xfns.c (Fx_create_frame): Signal an error if no font is
4055 found (Bug#2147).
4056
4d8e170e
JB
40572009-02-05 Juanma Barranquero <lekktu@gmail.com>
4058
4059 * character.c (syms_of_character) <script-representative-chars>:
4060 Fix typo in docstring.
4061
c96169a0
AR
40622009-02-04 Adrian Robert <Adrian.B.Robert@gmail.com>
4063
4064 * nsmenu.m (pop_down_menu): New function.
4065 (ns_popup_dialog): Call it on unwind.
4066 (EmacsDialogPanel-runDialogAt:): Check popup_activated_flag and
4067 call timer_check() (Bug#2154).
4068 (EmacsMenu-menuNeedsUpdate:): Don't call ns_update_menu if
4069 handling_signal is set.
4070 (EmacsMenu-fillWithWidgetValue:): Set submenu title.
4071
31fd7c5c 4072 * config.in: Get rid of COCOA_EXPERIMENTAL_CTRL_G.
c96169a0
AR
4073
4074 * s/darwin.h: Same and NO_SOCK_SIGIO as well.
4075
4076 * nsterm.m (ns_read_socket): Same and don't set handling_signal.
4077
51d861de
SM
4078 * keyboard.c (poll_for_input_1, handle_async_input):
4079 Set handling_signal under HAVE_NS.
c96169a0 4080
aacd8ba1
GM
40812009-02-04 Glenn Morris <rgm@gnu.org>
4082
4083 * fileio.c (Fwrite_region): Doc fix (mention annotate-functions).
4084
4cb75c4b
KH
40852009-02-04 Kenichi Handa <handa@m17n.org>
4086
4087 * Makefile.in (composite.o): Depends on frame.h and termhooks.h.
4088
4089 * charset.c (Fchar_charset): New optional arg restriction.
4090
4091 * coding.h (coding_system_charset_list): Extern it.
4092
4093 * coding.c (coding_system_charset_list): New function.
4094
4095 * composite.c: Include coding.h and termhooks.h.
4096 (composition_gstring_p): Fix for the terminal case.
4097 (composition_gstring_width): Likewise.
4098 (fill_gstring_body): Likewise.
4099 (autocmp_chars): For terminal, call Fcomposition_get_gstring with
4100 the frame.
4101 (composition_compute_stop_pos): Adjust cmp_it->stop_pos if point
4102 is within a composition.
867d4bb3 4103 (Fcomposition_get_gstring): Fix the terminal case.
4cb75c4b
KH
4104
4105 * term.c (encode_terminal_code): Fix handling of composition.
4106 (produce_composite_glyph): For static composition, get pixel_width
4107 from struct composition.
4108
826ba17e
AS
41092009-02-02 Andreas Schwab <schwab@suse.de>
4110
4111 * unexelf.c (unexec): Handle unaligned bss offset.
4112
8ad093db
AR
41132009-02-01 Adrian Robert <Adrian.B.Robert@gmail.com>
4114
4115 * nsterm.m (ns_read_socket): Copy 2009-01-29 and 2009-01-30
4116 XT,w32read_socket changes to ns_read_socket.
d0a76a6e 4117
8ad093db
AR
4118 * keyboard.c (handle_interrupt): Don't call
4119 quit_throw_to_read_char() under NS.
d0a76a6e 4120
8ad093db
AR
4121 * blockinput.h: Remove NS-specific code.
4122
4d18a7a2
DN
41232009-01-30 Dan Nicolaescu <dann@ics.uci.edu>
4124
db878925
DN
4125 * dispnew.c (window_change_signal): Don't try to get the size of a
4126 suspended tty frame.
4127 * term.c (Fresume_tty): Resize if the size has changed while the
4128 tty was suspended.
4129
4d18a7a2
DN
4130 * alloc.c (mark_stack): Properly conditionalize previous change.
4131
8984df7c
JB
41322009-01-30 Juanma Barranquero <lekktu@gmail.com>
4133
4134 * w32inevt.c (w32_console_read_socket) [SYNC_INPUT]:
4135 * w32term.c (w32_read_socket) [SYNC_INPUT]:
4136 Remove; this code is not used on Windows.
4137
75f4f1ac
EZ
41382009-01-30 Eli Zaretskii <eliz@gnu.org>
4139
4140 * coding.c (detect_eol, decode_eol): Handle text with DOS-style
4141 EOLs that also has stray ^M characters.
4142
07a1e794
JB
41432009-01-30 Juanma Barranquero <lekktu@gmail.com>
4144
4145 * atimer.c (run_timers, alarm_signal_handler):
4146 * keyboard.c (pending_signals, handle_async_input, init_keyboard):
4147 * w32inevt.c (w32_console_read_socket):
4148 * w32term.c (w32_read_socket):
4149 * xterm.c (XTread_socket): Use "#ifdef SYNC_INPUT" where appropriate.
4150
a8b11cc9
CY
41512009-01-30 Chong Yidong <cyd@stupidchicken.com>
4152
4153 * callproc.c (Vtemp_file_name_pattern): Remove DEFVAR_LISP.
4154 Initialize it as a relative filename pattern.
4155 (init_callproc): Don't initialize Vtemp_file_name_pattern here.
4156 (Fcall_process_region): Simplify temp file creation using
4157 temporary-file-directory.
4158
c279587b
EZ
41592009-01-29 Eli Zaretskii <eliz@gnu.org>
4160
4161 * msdos.c: Rename pending_signals to msdos_pending_signals.
4162 (sig_suspender, sigprocmask): Adjust.
4163
a8fe3242
CY
41642009-01-29 Chong Yidong <cyd@stupidchicken.com>
4165
4166 * keyboard.c (pending_signals): New var.
4167 (poll_for_input, input_available_signal, init_keyboard): Set it.
4168 (process_pending_signals): New function.
4169
4170 * lisp.h (QUIT): Check pending_signals instead of
4171 interrupt_input_pending. Use process_pending_signals.
4172
51d861de 4173 * atimer.c (run_timers, alarm_signal_handler): Update pending_signals.
a8fe3242 4174
51d861de 4175 * process.c (wait_reading_process_output): Use process_pending_signals.
a8fe3242
CY
4176
4177 * sysdep.c (emacs_write): Use process_pending_signals.
4178
4179 * xterm.c (XTread_socket): Update pending_signals.
4180
4181 * w32term.c (w32_read_socket): Update pending_signals.
4182
4183 * w32inevt.c (w32_console_read_socket): Update pending_signals.
4184
6570a1c4
KH
41852009-01-29 Kenichi Handa <handa@m17n.org>
4186
4187 * xftfont.c (xftfont_has_char): New function.
4188 (syms_of_xftfont): Register xftfont_has_char in xftfont_driver.
4189
d72a4afa
AR
41902009-01-29 Adrian Robert <Adrian.B.Robert@gmail.com>
4191
4192 * nsterm.h (EmacsPrefsController.cursorBlinkSlider): Only define
4193 under GNUstep.
4194 (ns_query_color): New declaration.
4195
4196 * nsterm.m (ns_confirm_quit): New variable.
4197 (ns_set_default_prefs, syms_of_nsterm, ns_term_init): Initialize it.
4198 (EmacsApp-applicationShouldTerminate:): Use it.
4199 (EmacsPrefsController): Let user set it.
4200 (ns_query_color): New function.
4201 (ns_defined_color): Use it.
4202 (ns_initialize): Drop.
4203 (ns_term_init): Add two lines from ns_initialize(), and set
4204 input_interrupt_mode to nil.
4205
4206 * image.c (svg_load_image): Don't right-shift background RGB when
6af84d77 4207 obtained from FRAME_BACKGROUND_PIXEL. Under HAVE_NS use ns_query_color.
d72a4afa 4208
9fe78804
KH
42092009-01-28 Kenichi Handa <handa@m17n.org>
4210
4211 * fontset.c (font_for_char): Use assq_no_quit, not assoc_no_quit.
f088b054
KH
4212 (fontset_get_font_group): Remember that no font-group is specified
4213 for C.
9fe78804 4214
fa57de36
CY
42152009-01-27 Chong Yidong <cyd@stupidchicken.com>
4216
930600e9
CY
4217 * fns.c (concat): Check for string overflow (bug#1787).
4218
fa57de36
CY
4219 * undo.c (undo_limit, undo_strong_limit, Vundo_outer_limit):
4220 Quadruple undo limits (bug#1501).
4221
7179ce7b
KH
42222009-01-27 Kenichi Handa <handa@m17n.org>
4223
4224 * ftfont.c (ftfont_has_char): If the arg FONT is a font-object,
4225 directly use GT_Get_Char_index.
4226
4227 * xftfont.c (struct xftfont_info): New member `index'.
4228
4229 * fontset.c (font_for_char): Use assq_no_quit, not assoc_no_quit.
51d861de 4230 (Ffontset_font): Adjust for the change of fontset entry.
7179ce7b 4231
5be8fcc0
CY
42322009-01-26 Kenichi Handa <handa@m17n.org>
4233
4234 * fontset.c (fontset_find_font): Fix handling of non-cons return
4235 value of fontset_get_font_group.
4236 (fontset_font): Revert last change.
4237
19ae3e61
JR
42382009-01-26 Jason Rumney <jasonr@gnu.org>
4239
4240 * w32font.c (w32font_list_internal): Return quickly if registry is
4241 unknown. Simplify final return.
4242 (add_font_entity_to_list): Break complex logic down into more
4243 manageable chunks. Move unknown registry check to
4244 w32font_list_internal.
4245
8612b71a
AR
42462009-01-25 Adrian Robert <Adrian.B.Robert@gmail.com>
4247
4248 Changes to remove Feval calls from GUI under NS.
4249
d8038940
JB
4250 * nsterm.h: Move KEY_NS_... definitions here from nsterm.m.
4251 Add NS_TOGGLE_TOOLBAR, NS_PUT_WORKING_TEXT, NS_UNPUT_WORKING_TEXT.
8612b71a
AR
4252 Remove NS_INSERT_WORKING_TEXT, NS_DELETE_WORKING_TEXT.
4253
4254 * nsterm.m: Move KEY_NS_... definitions to nsterm.h.
4255 (EmacsView-toggleToolbar:): Use KEY_NS_TOGGLE_TOOLBAR.
4256 (EmacsView-setMarkedText:,-deleteWorkingText:): Use NS_TEXT_EVENT
4257 instead of NON_ASCII_KEYSTROKE_EVENT.
4258 (EmacsApp-terminate:): Use KEY_NS_POWER_OFF instead of Feval.
4259 (EmacsApp-applicationShouldTerminate:): Query user.
4260 (EmacsPreferencesController-runHelp:): Use KEY_NS_INFO_PREFS
4261 instead of Feval.
4262
4263 * termhooks.h (NS_TEXT_EVENT): New event type under HAVE_NS.
4264
4265 * keyboard.c (kbd_buffer_get_event): Check for it.
4266 (keys_of_keyboard): Define lispy keys for
4267 ns-put/unput-working-text.
4268
4269 * nsmenu.m (ns_popup_dialog): Resync window setting with X and W32
4270 versions.
4271 (EmacsDialog-runDialogAt:): Use NSModalPanelRunLoopMode.
4272
6288ae55
CY
42732009-01-25 Chong Yidong <cyd@stupidchicken.com>
4274
4275 * dispnew.c (buffer_posn_from_coords): Use Fset_buffer instead of
64cc3cf6 4276 setting current_buffer directly. (Bug#2044)
6288ae55 4277
289e7f8f
CY
42782009-01-24 Chong Yidong <cyd@stupidchicken.com>
4279
5ce87308 4280 * fontset.c (fontset_font): If we know there is no font, don't do
d8038940 4281 any work. (Bug#1952, bug#1990).
5ce87308 4282
64cc3cf6 4283 * font.c (font_parse_xlfd): Handle patterns of length < 2. (Bug#1802)
289e7f8f 4284
b3243e6f
AR
42852009-01-23 Adrian Robert <Adrian.B.Robert@gmail.com>
4286
4287 * emacs.c (main): Do fork+exec under --daemon in Cocoa.
d900b2af
AR
4288 (ns_no_defaults): New declaration.
4289 (main): Use it.
e0d2e69a 4290
d900b2af 4291 * nsterm.h (ns_no_defaults): New declaration.
e0d2e69a 4292
d900b2af 4293 * nsfns.m (x_get_string_resource): Don't read when ns_no_defaults.
e0d2e69a 4294
d900b2af
AR
4295 * nsterm.m (ns_no_defaults): New variable.
4296 (ns_initialize): Don't read defaults when ns_no_defaults.
4297 (EmacsView-readSelectionFromPasteboard:)
4298 (writeSelectionToPasteboard:types:): New stubbed-out methods for
d8038940 4299 NSServicesRequests protocol. (Bug#1435)
27521ca6
AR
4300 (ns_dumpglyphs_stretch): New function.
4301 (ns_draw_glyph_string): Use it, parallel Yamamoto Mitsuharu change
d8038940 4302 of 2008-11-15 to other terms. (Bug#615)
b3243e6f 4303
e0d2e69a
AR
4304 * nsimage.m (setPixmapData:): Set to ignore image DPI.
4305
3ac71f5d
CY
43062009-01-23 Giorgos Keramidas <keramida@freebsd.org> (tiny change)
4307
4308 * alloc.c (mark_stack): Use "flushw" instead of "ta 3" assembly
4309 call for Sparc64.
4310
3fe53a83
AR
43112009-01-22 Adrian Robert <Adrian.B.Robert@gmail.com>
4312
4313 * nsfns.m:
4314 * nsgui.h:
4315 * nsmenu.m:
4316 * nsselect.m:
4317 * nsterm.h:
4318 * nsterm.m: Remove '23' comments that indicated code added during
4319 update from emacs-20 -> emacs-23.
4320
10f87c6f 43212009-01-22 Adrian Robert <Adrian.B.Robert@gmail.com>
a3b53a85
AR
4322
4323 * nsterm.m (EmavsView-keyDown:): Treat nil as Qnone for
3a88a825 4324 ns_alternate_modifier. (Bug#1217)
a3b53a85 4325
c7cef62d
AR
4326 * nsmenu.m (EmacsMenu-parseKeyEquiv:, addItemWithWidgetValue:):
4327 Display all shortcuts, including those w/o super modifier.
4328
575fb8bd
AR
4329 * nsfns.m (ns-read-file-name): Fix typo in assignment statement.
4330
918b848b
CY
43312009-01-22 Chong Yidong <cyd@stupidchicken.com>
4332
4333 * fileio.c (Vwrite_region_post_annotation_function)
4334 (Vwrite_region_annotation_buffers): New vars.
4335 (build_annotations_unwind): Just reset
4336 Vwrite_region_annotation_buffers.
4337 (Fwrite_region): Initialize Vwrite_region_annotation_buffers.
4338 Call write-region-post-annotation-function.
4339 (build_annotations): Add to Vwrite_region_annotation_buffers if
4340 buffer changes.
4341
a39e2539
AR
43422009-01-21 Adrian Robert <Adrian.B.Robert@gmail.com>
4343
4344 * nsterm.h (EmacsApp-setAppleMenu:): Conditionalize more correctly on
4345 Tiger.
51d861de
SM
4346 * nsfns.m (ns_do_applescript):
4347 Conditionalize typeUTF16ExternalRepresentation on Tiger.
a39e2539 4348
35ed44db
AR
43492009-01-21 Wolfgang Lux <wolfgang.lux@gmail.com> (tiny change)
4350
4351 * nsterm.m (EV_TRAILER): Always use emacsframe for frame_or_window.
4352
cbe0b5bf
AR
43532009-01-21 Adrian Robert <Adrian.B.Robert@gmail.com>
4354
4355 * nsmenu.m (NSMENUPROFILE): Change #if style.
4c7077c3 4356
6049d3a0
AR
4357 * nsterm.h (EmacsPrefsController): Add -setPanelFromDefaultValues.
4358
4359 * nsterm.m (x_set_frame_alpha): Add prototype.
a9b4df69
AR
4360 (ns_fake_keydown, EmacsView-keyUp:): New variable and function to
4361 handle Ctrl-tab. (Bug#1841)
4362 (ns_get_color): Use unsigned long long for scanned hex string value.
4363 (ns_term_shutdown): Abort on non SIGTERM signals.
e889fa06 4364 (EmacsPrefsController-setDefaultFont:,-setColors:): Raise the frame.
b71ac3dd 4365 (EmacsPrefsController-setPanelFromDefaultValues): New function.
3a88a825 4366 (EmacsPrefsController-resetToDefaults:): Use it. (Bug#1801)
35ed44db 4367 (ns_font_to_xlfd, ns_fontname_to_xlfd): Remove, unused.
d3810c21 4368 (ns_defined_color): Fix settings of the XColor variable fields:
3a88a825 4369 red,green,blue scale to 2-byte, pixel's parts to 1-byte. (Bug#1663)
cbe0b5bf 4370
d3810c21 4371 * nsimage.m (EmacsImage+allocInitFromFile:): Set to ignore image
3a88a825 4372 DPI. (Bug#1316)
d3810c21
AR
4373 (EmacsImage-setPixelAtX:Y:toRed:green:blue:alpha:): Fix color
4374 values in onTiger section.
4c7077c3 4375
e301e634
CY
43762009-01-19 Chong Yidong <cyd@stupidchicken.com>
4377
7f82490b
CY
4378 * xfaces.c (Finternal_set_lisp_face_attribute, Fx_list_fonts):
4379 Check return value of font_spec_from_name.
64cc3cf6 4380 (Fx_list_fonts): Doc fix. (Bug#1951)
7f82490b
CY
4381
4382 * font.c (font_spec_from_name): Return Qnil if font name could not
4383 be parsed.
4384 (font_parse_name): Treat a `?' character as part of an XLFD.
4385
e301e634
CY
4386 * fns.c (Fsubstring): Doc fix.
4387
1c0db158
KH
43882009-01-19 Kenichi Handa <handa@m17n.org>
4389
51d861de 4390 * ftfont.c (ftfont_lookup_cache): Check the return value of FcFontList.
1c0db158
KH
4391 (ftfont_list): Likewise.
4392
acf20901
JB
43932009-01-18 Juanma Barranquero <lekktu@gmail.com>
4394
fff4e459
JB
4395 * dbusbind.c (Fdbus_register_signal):
4396 * process.c (conv_sockaddr_to_lisp):
4397 * w32fns.c (Fw32_battery_status): Use empty_unibyte_string.
4398
acf20901
JB
4399 * callproc.c (Fgetenv_internal): Doc fix.
4400
e7abcdfb
CY
44012009-01-16 Chong Yidong <cyd@stupidchicken.com>
4402
4403 * xfns.c (x_make_gc): Don't allocate stipple member for gc_values;
4404 it is not even used.
4405
b60861e6
GM
44062009-01-16 Glenn Morris <rgm@gnu.org>
4407
4408 * font.c (Ffont_variation_glyphs): Silence compiler.
4409
8db52afe
JB
44102009-01-15 Juanma Barranquero <lekktu@gmail.com>
4411
4412 * sound.c (SOUND_WARNING): Use _snprintf, for MSVC compatibility.
4413 Reported by David Robinow <drobinow@gmail.com>.
4414
4cddb209
KH
44152009-01-15 Kenichi Handa <handa@m17n.org>
4416
51d861de 4417 * coding.c (detect_coding_system): Fix handling of null_byte_found.
4cddb209 4418
f247f67b
JR
44192009-01-14 Jason Rumney <jasonr@gnu.org>
4420
4421 * frame.c (x_set_font): Always store a font to the font parameter,
fff4e459 4422 never a fontset. (Bug#1562)
f247f67b 4423
f56a4450
KH
44242009-01-14 Kenichi Handa <handa@m17n.org>
4425
4426 * coding.c (TWO_MORE_BYTES): New macro.
fff4e459 4427 (detect_coding_utf_16): Use TWO_MORE_BYTES instead of ONE_MORE_BYTE.
f56a4450 4428
4e99855e
CY
44292009-01-13 Chong Yidong <cyd@stupidchicken.com>
4430
4431 * font.c (font_clear_prop): If clearing the family, clear the font
4432 width index too.
4433
fff4e459 4434 * xfaces.c (Finternal_set_lisp_face_attribute): Revert last change.
4e99855e 4435
24f01470
JB
44362009-01-12 Juanma Barranquero <lekktu@gmail.com>
4437
4438 * sound.c [WINDOWSNT] (SOUND_WARNING): New macro.
4439 (do_play_sound): Use it. Don't pass a hardcoded buffer size to mci
4440 functions, use sizeof.
4441
a41240a3
MR
44422009-01-12 Martin Rudalics <rudalics@gmx.at>
4443
4444 * keyboard.c (read_char): Fix case where last_nonmenu_event
4445 returned a bad value with submenus. (Bug#447)
4446
944636b8
CY
44472009-01-12 Chong Yidong <cyd@stupidchicken.com>
4448
4449 * xfaces.c (Finternal_set_lisp_face_attribute): If setting the
4450 family, clear the font width index too.
4451
0dad7c6f
JR
44522009-01-11 Jason Rumney <jasonr@gnu.org>
4453
4454 * keyboard.c (cmd_error_internal): Exit when errors occur before
4455 frame creation and not in daemon mode. (Bug#1836)
4456
7c2363af
CY
44572009-01-10 Chong Yidong <cyd@stupidchicken.com>
4458
4459 * xdisp.c (pos_visible_p): When iterator stops on the last glyph
4460 of a display vector, backtrack.
4461 (try_window_reusing_current_matrix): Check glyph type before
4462 referencing charpos member.
4463
97b1b294
EZ
44642009-01-10 Eli Zaretskii <eliz@gnu.org>
4465
4466 Fix Bug #876:
4467
4468 * coding.c (inhibit_null_byte_detection): New variable.
4469 (detect_coding, detect_coding_system): Don't pay attention to null
4470 bytes if inhibit_null_byte_detection is non-zero.
51d861de 4471 (syms_of_coding) <inhibit-null-byte-detection>: Declare and document.
97b1b294
EZ
4472 <inhibit-iso-escape-detection>: Doc fix.
4473
4624b6e3
JR
44742009-01-09 Jason Rumney <jasonr@gnu.org>
4475
4476 * w32font.c (add_font_entity_to_list): Don't report unknown
fff4e459 4477 Windows charset as any unrecognized registry. (Bug#1548)
4624b6e3
JR
4478 Only report Unicode Plane 2 fonts as unicode-sip.
4479
323b840c
CY
44802009-01-09 Chong Yidong <cyd@stupidchicken.com>
4481
51d861de
SM
4482 * xfaces.c (Fx_font_family_list): Delete function.
4483 Move compatibility version to faces.el.
323b840c 4484
51d861de 4485 * font.c (Ffont_family_list): Return a list of strings, not symbols.
323b840c 4486
eba7400d
MR
44872009-01-09 Martin Rudalics <rudalics@gmx.at>
4488
4489 * frame.c (x_set_frame_parameters): Remember requested value for
4490 fullscreen before it's reset by the parameter handler.
4491
4b09796d
GM
44922009-01-09 Glenn Morris <rgm@gnu.org>
4493
4494 * keyboard.c (last_command_char): For clarity, rename to...
46e722a9 4495 (last_command_event): ... and update all users.
4b09796d
GM
4496 (last_input_char): For clarity, rename to...
4497 (last_input_event): ... and update all users.
4498 (last-command-char, last-input-char): Move to subr.el as aliases.
4499 * cmds.c, commands.h: Update for last_command_char rename.
4500
14ccea62
CY
45012009-01-08 Chong Yidong <cyd@stupidchicken.com>
4502
51d861de 4503 * font.c (font_open_for_lface): Handle unspecified height attribute.
14ccea62 4504
5f004711
JR
45052009-01-08 Jason Rumney <jasonr@gnu.org>
4506
4507 * w32fns.c (Vx_pointer_shape, Vx_nontext_pointer_shape)
4508 (Vx_mode_pointer_shape, Vx_window_horizontal_drag_shape)
4509 (Vx_hourglass_pointer_shape, Vx_sensitive_text_pointer_shape):
4510 Don't declare.
fff4e459 4511 (syms_of_w32fns): Don't define x-pointer-shape variable. (Bug#1485)
5f004711
JR
4512 (x_create_tip_frame) [GLYPH_DEBUG]: Enable image debugging code.
4513
b71f6f73
KH
45142009-01-07 Kenichi Handa <handa@m17n.org>
4515
50b06221 4516 * fileio.c (Finsert_file_contents): In the case of replace,
f56a4450 4517 remember the coding system used for decoding in
50b06221
KH
4518 coding_system (Bug#1039).
4519
b71f6f73 4520 * coding.c (decode_coding_utf_8): Check byte_after_cr before
79a97217 4521 breaking the loop. (Bug#870)
b71f6f73
KH
4522 (decode_coding_utf_16, decode_coding_emacs_mule)
4523 (decode_coding_iso_2022, decode_coding_sjis, decode_coding_big5)
4524 (decode_coding_charset): Likewise.
4525
56f668f7
MR
45262009-01-05 Martin Rudalics <rudalics@gmx.at>
4527
4528 * frame.c (x_set_frame_parameters): Make sure height (width) get
4529 applied when fullwidth (fullheight) is set. (Bug#1522)
4530
5da9424d
JB
45312009-01-04 Juanma Barranquero <lekktu@gmail.com>
4532
4533 * w32.c: Use 64-bit arithmetic to do FILETIME conversions. (Bug#1766)
4534 (utc_base): Declare as ULONGLONG, not long double.
4535 (convert_time_raw): Delete.
4536 (FILETIME_TO_U64, U64_TO_LISP_TIME): New macros.
4537 (initialize_utc_base): New function.
4538 (convert_time): Use FILETIME_TO_U64, initialize_utc_base.
4539 (convert_from_time_t): Use initialize_utc_base; compute result with
4540 64-bit arithmetic.
4541 (process_times): Use FILETIME_TO_U64, U64_TO_LISP_TIME.
4542
c4605e09
EZ
45432009-01-03 Eli Zaretskii <eliz@gnu.org>
4544
9acef61c 4545 * process.c (Qeuid, Qegid, Qcomm, Qstate, Qppid, Qpgrp, Qsess)
c4605e09
EZ
4546 (Qttname, Qminflt, Qmajflt, Qcminflt, Qcmajflt, Qutime, Qstime)
4547 (Qcutime, Qpri, Qnice, Qthcount, Qstart, Qvsize, Qrss, Qargs)
4548 (Quser, Qgroup, Qetime, Qpcpu, Qpmem, Qtpgid, Qcstime)
4549 [!subprocesses]: Define.
4550 (syms_of_process) [!subprocesses]: Intern and staticpro them.
4551 (Flist_system_processes, Fsystem_process_attributes)
4552 [!subprocesses]: Call list_system_processes and
4553 system_process_attributes instead of returning Qnil.
4554
9acef61c
JB
4555 * dosfns.c (system_process_attributes, list_system_processes):
4556 New functions.
c4605e09
EZ
4557
4558 * vm-limit.c (ret_lim_data) [MSDOS]: New function.
4559
4560 * sysdep.c (list_system_processes, system_process_attributes) [MSDOS]:
4561 Don't use the default (no-op) implementation.
4562
8b7d0a16
JR
45632009-01-03 Jason Rumney <jasonr@gnu.org>
4564
a6d46bc1
JR
4565 * keyboard.c (parse_modifiers_uncached): Wheel events are
4566 clicks (bug#687).
4567
8b7d0a16
JR
4568 * w32term.c (x_query_colors, x_query_color): New functions.
4569
4570 * image.c (x_to_xcolors, png_load): Eliminate W32 specific code.
4571 (svg_load_image): Cast returned pointers from dynamically loaded
4572 functions. Eliminate W32 specific code.
4573
bfe11752
DN
45742009-01-02 Dan Nicolaescu <dann@ics.uci.edu>
4575
89e2438a
DN
4576 * nsfns.m (x_set_foreground_color, x_set_background_color)
4577 (x_set_cursor_color, x_set_icon_name, x_explicitly_set_name)
4578 (x_set_title, x_set_icon_type, x_set_cursor_type): Rename to use
4579 x_ prefix instead of ns_. Update references.
4580 (syms_of_nsfns): Add a FIXME comment.
4581
4582 * nsterm.m (x_set_cursor_type): New prototype.
4583 (setValuesFromPanel): Use it instead of the old ns_ prefixed name.
4584
bfe11752
DN
4585 * sysdep.c (system_process_attributes): Provide Qtime and Qctime
4586 for Solaris instead of incorrectly providing Qutime and Qcutime.
4587
031da700
EZ
45882009-01-02 Eli Zaretskii <eliz@gnu.org>
4589
4590 * w32.c (process_times): Compute sum of utime and stime.
4591 (system_process_attributes): Add Qtime to the alist.
4592
4593 * sysdep.c (system_process_attributes): Compute Qtime and Qctime
4594 and add them to the alist.
4595
4596 * process.c (top level) <Qtime, Qctime>: New variables.
4597 (syms_of_process): staticpro them.
4598 (Fsystem_process_attributes): Add their documentation to the doc
4599 string.
4600
4601 * process.h: Declare Qtime and Qctime.
4602
df23bf08
JR
46032009-01-02 Jason Rumney <jasonr@gnu.org>
4604
9acef61c 4605 * image.c (Qgobject): New symbol.
df23bf08
JR
4606 (syms_of_image): Initialize it.
4607 (init_svg_functions): Load some functions from gobject library.
4608
5bbdf7aa
DN
46092009-01-01 Dan Nicolaescu <dann@ics.uci.edu>
4610
4611 * frame.c (make_terminal_frame): Remove redundant code and useless
4612 block.
4613
63136da6
AS
46142009-01-01 Andreas Schwab <schwab@suse.de>
4615
4616 * process.c (conv_sockaddr_to_lisp): Add workaround for
4617 getsockname bug on BSD.
4618
9ef69046
CY
46192009-01-01 Chong Yidong <cyd@stupidchicken.com>
4620
d6fafbe0
CY
4621 * xfns.c (x_create_tip_frame): Set border width of the X window.
4622
51d861de 4623 * xfaces.c (Finternal_set_lisp_face_attribute): Improve error message.
9ef69046 4624
f9c34147
JR
46252009-01-01 Jason Rumney <jasonr@gnu.org>
4626
9acef61c 4627 * w32term.c (x_new_font): Return font object, not fontset. (Bug#119)
f9c34147
JR
4628 Don't block input, as per earlier xterm.c changes.
4629
f5497e45
AR
46302008-12-31 Adrian Robert <Adrian.B.Robert@gmail.com>
4631
4632 * nsfns.m (ns_appkit_version_str): Rename from ns_appkit_version.
4633 (ns_appkit_version_int): New function.
4634 (x-server-version): Use ns_appkit_version_int and follow 21+
4635 convention of returning 3 integers.
4636
c19cab20
KH
46372008-12-30 Kenichi Handa <handa@m17n.org>
4638
4639 * character.h (CHAR_VARIATION_SELECTOR_P): New macro.
4640 (CHAR_SURROGATE_PAIR_P): New macro.
4641
4642 * font.h (struct font_driver): New member get_variation_glyphs.
4643
9acef61c 4644 * font.c (font_range): Don't require a font for a variation selector.
c19cab20
KH
4645 (Ffont_variation_glyphs): New function.
4646 (syms_of_font): Defsubr it.
4647
4648 * ftfont.c (ftfont_driver): Set the member get_variation_glyphs to
4649 ftfont_variation_glyphs.
4650 (setup_otf_gstring): New function.
4651 (ftfont_drive_otf): Use it.
4652 (ftfont_shape_by_flt): Handle variation selector.
4653 (ftfont_variation_glyphs): New function.
4654
28cd591f
MR
46552008-12-30 Martin Rudalics <rudalics@gmx.at>
4656
4657 * frame.c (Vemacs_iconified): Remove.
4658
7f714baf
JR
46592008-12-30 Jason Rumney <jasonr@gnu.org>
4660
4661 * frame.c (store_frame_param, x_get_arg): Enable newer code on
9acef61c 4662 WINDOWSNT too, as related changes have already been synced. (Bug#117)
7f714baf 4663
9d2d22ab
CY
46642008-12-30 Chong Yidong <cyd@stupidchicken.com>
4665
4666 * indent.c (Fvertical_motion): Don't advance iterator if we have
4667 reseated to the desired position.
4668
4669 * xdisp.c (move_it_to): Handle GET_FROM_STRETCH method when
4670 checking for pos match.
4671
545312c2
KH
46722008-12-30 Kenichi Handa <handa@m17n.org>
4673
1ede3eb6
KH
4674 * insdel.c (copy_text): To convert a non-ASCII char to unibyte,
4675 just get the low 8-bit of the code.
4676
545312c2
KH
4677 * font.c (font_intern_prop): Validate str as multibyte.
4678
bd7bbf29
DN
46792008-12-29 Dan Nicolaescu <dann@ics.uci.edu>
4680
31e0750e
DN
4681 * dispextern.h (struct face): Move lface and hash from the middle
4682 of bitfields.
4683
bd7bbf29
DN
4684 * Makefile.in (INTERVALS_H): Rename from INTERVAL_SRC, update all users.
4685
b5672e7c
DN
46862008-12-29 Dan Nicolaescu <dann@ics.uci.edu>
4687
4688 * Makefile.in (INTERVAL_SRC): Also depend on dispextern.h.
4689 (coding.o, dispnew.o, keymap.o, msdos.o): Depend on INTERVAL_SRC
4690 instead of intervals.h.
4691
d704470f
AS
46922008-12-26 Andreas Schwab <schwab@suse.de>
4693
4694 * keymap.c (map_keymap_char_table_item): Make a copy of KEY if it is a
4695 cons.
4696
54b33868
MR
46972008-12-26 Martin Rudalics <rudalics@gmx.at>
4698
4699 * textprop.c (Qminibuffer_prompt): New variable.
4700 (syms_of_textprop): Initialize it.
4701 * callint.c (Fcall_interactively): For `c', `k', and `K' prompt
4702 in minibuffer-prompt face. (Bug#1662)
4703
40b615d6
JR
47042008-12-25 Jason Rumney <jasonr@gnu.org>
4705
4706 * buffer.c (Fbuffer_swap_text): Use POINTER_TYPE.
4707
baae5c2d
JR
47082008-12-24 Jason Rumney <jasonr@gnu.org>
4709
4710 * ralloc.c (r_alloc_reset_variable): New function.
4711
4712 * buffer.c (Fbuffer_swap_text) [REL_ALLOC]: Reset ralloc's internal
9acef61c 4713 record of what points where. (Bug#716)
baae5c2d 4714
a9051c88
DN
47152008-12-22 Dan Nicolaescu <dann@ics.uci.edu>
4716
4717 * minibuf.c (read_minibuf): Follow the non-interactive case when
4718 running as a daemon, before detaching.
4719
8b146312
AS
47202008-12-22 Andreas Schwab <schwab@suse.de>
4721
4722 * buffer.c (init_buffer): Use realloc instead of xrealloc.
4723 * gtkutil.c (free_widget_value): Use xfree instead of free.
4724
56f2de10
MR
47252008-12-22 Martin Rudalics <rudalics@gmx.at>
4726
4727 * frame.c (delete_frame): New function derived from
4728 Fdelete_frame to handle Qnoelisp value for FORCE argument.
4729 Delete last frame iff FORCE equals Qnoelisp. (Bug#1450)
4730 (Fdelete_frame): Call delete_frame. Remove line from doc-string
4731 saying that FORCE non-nil doesn't run `delete-frame-functions'.
4732 * frame.h: Extern delete_frame.
4733 * window.c (window_loop):
4734 * terminal.c (delete_terminal):
4735 * xterm.c (x_connection_closed):
4736 * xfns.c (Fx_hide_tip):
9acef61c 4737 * w32fns.c (Fx_hide_tip): Call delete_frame instead of Fdelete_frame.
56f2de10 4738
1fc200d6
JR
47392008-12-21 Jason Rumney <jasonr@gnu.org>
4740
4741 * w32uniscribe.c (uniscribe_encode_char): Return FONT_INVALID_CHAR
4742 when character maps to .notdef character.
4743
5e252df2
SM
47442008-12-21 Stefan Monnier <monnier@iro.umontreal.ca>
4745
4746 * keyboard.c (cmd_error_internal): Don't exit in daemon mode, bug#1310.
4747
99b72cc4
JR
47482008-12-20 Jason Rumney <jasonr@gnu.org>
4749
4750 * frame.c (Fmake_terminal_frame): Raise an error when called from
9acef61c 4751 a graphical frame on Windows. (Bug#1325)
99b72cc4 4752
acc49a52
JD
47532008-12-20 Jan Djärv <jan.h.d@swipnet.se>
4754
4755 * frame.c (Fdelete_frame): Set f->menu_bar_vector to Qnil.
4756
6ea15123
CY
47572008-12-20 Chong Yidong <cyd@stupidchicken.com>
4758
4759 * minibuf.c (Fread_buffer): Doc fix.
4760
b2dab6c8
JR
47612008-12-20 Jason Rumney <jasonr@gnu.org>
4762
54ea0c87 4763 * fileio.c (Fexpand_file_name): Do not allow ../ to go beyond the
9acef61c 4764 server name in UNC paths. (Bug#719)
54ea0c87 4765
b2dab6c8 4766 * coding.c (decode_coding): Clear chars_at_source flag when using
9acef61c 4767 charbuf. (Bug#1035)
b2dab6c8 4768
6d1921be
DN
47692008-12-19 Daniel Engeler <engeler@gmail.com>
4770
4771 * sysdep.c (serial_configure): Fix typo.
4772
53934c98
DN
47732008-12-19 Dan Nicolaescu <dann@ics.uci.edu>
4774
4775 * sysdep.c: Include alloca.h.
f4f634e8
DN
4776 (system_process_attributes): Add implementation for Solaris.
4777
4778 * s/sol2-10.h (HAVE_PROCFS, _STRUCTURED_PROC): New defines.
53934c98 4779
06e111a6
DN
47802008-12-19 Dan Nicolaescu <dann@ics.uci.edu>
4781
4782 Reorganize implementation of Flist_system_processes and
4783 Fsystem_process_attributes. No functional changes.
4784 * process.c: Don't #include pwd.h, grp.h and limits.h.
4785 (Flist_system_processes): Just call list_system_processes.
4786 (Fsystem_process_attributes): Just call system_process_attributes.
4787 (procfs_list_system_processes, time_from_jiffies)
4788 (ltime_from_jiffies, get_up_time, procfs_ttyname, MAJOR, MINOR)
4789 (procfs_get_total_memory, procfs_system_process_attributes): Move ...
4790
4791 * sysdep.c: ... here. Include pwd.h, grp.h and limits.h.
4792 (list_system_processes): Rename from
4793 procfs_list_system_processes. Enclose in #ifdef HAVE_PROCFS.
4794 Provide a do nothing implementation.
4795 (system_process_attributes): Rename from
4796 procfs_list_system_processes.
4797 (ltime_from_jiffies, get_up_time, procfs_ttyname, MAJOR, MINOR)
9acef61c 4798 (procfs_get_total_memory): Enclose in #ifdef GNU_LINUX.
06e111a6
DN
4799
4800 * w32.c (list_system_processes): Rename from
4801 w32_list_system_processes.
4802 (system_process_attributes): Rename from
4803 w32_system_process_attributes.
4804
4805 * s/gnu-linux.h (LISTPROC, PROCATTR): Remove.
4806
4807 * process.h (w32_list_system_processes)
4808 (w32_system_process_attributes): Remove.
362654a6
JB
4809 (list_system_processes, system_process_attributes):
4810 New prototypes.
06e111a6 4811
6a705b23
KH
48122008-12-19 Kenichi Handa <handa@m17n.org>
4813
4814 * xfont.c (xfont_decode_coding_xlfd): New function.
4815 (xfont_encode_coding_xlfd): New function.
4816 (xfont_list_pattern): Decode XLFD by iso-8859-1.
4817 (xfont_list): Decode and encode XLFD by iso-8859-1.
4818 (xfont_match): Likewise.
4819 (xfont_list_family): Likewise.
4820 (xfont_open): Likewise.
4821
d66c0241 4822 * ftfont.c (ftfont_open): Generate a multibyte string if given
6a705b23
KH
4823 names are utf-8.
4824
d66c0241 4825 * xftfont.c (xftfont_open): Generate a multibyte string if given
6a705b23
KH
4826 names are utf-8.
4827
5a130941
JD
48282008-12-18 Jan Djärv <jan.h.d@swipnet.se>
4829
4830 * gtkutil.c (xg_frame_resized): Remove check if rows/columns have
4831 changed.
bfd20325
JD
4832 (xg_tool_bar_proxy_callback): Put focus on the frame after we have
4833 clicked on a detached tool bar button.
5a130941 4834
fd95644b
DN
48352008-12-18 Dan Nicolaescu <dann@ics.uci.edu>
4836
4837 * emacs.c (main): Print and error and exit when no data is read
4838 from the pipe.
4839
e6eee6ae
JR
48402008-12-17 Jason Rumney <jasonr@gnu.org>
4841
4842 * w32font.c (w32font_has_char): Always return -1.
4843
a35dd56b
KH
48442008-12-16 Kenichi Handa <handa@m17n.org>
4845
4846 * font.c (font_open_entity): Fix previous change.
4847
0e3635c2
DN
48482008-12-16 Dan Nicolaescu <dann@ics.uci.edu>
4849
4850 * process.c: Include <limits.h>.
4851
d4835507 48522008-12-16 Chetan Pandya <pandyacus@sbcglobal.net> (tiny change)
b5356c39
CY
4853
4854 * font.c (font_update_drivers): Fix mistake in reconstructing the
4855 driver list.
4856
48572008-12-16 Chong Yidong <cyd@stupidchicken.com>
4858
4859 * font.c (font_clear_cache): Fix format of font cache data.
4860
e2cbc401
CY
48612008-12-15 Chong Yidong <cyd@stupidchicken.com>
4862
4863 * xftfont.c (xftfont_open): Free Xft font pattern if
4864 XftFontOpenPattern fails.
4865
4866 * xterm.c (x_free_frame_resources): Remove extraneous call to
4867 free_frame_faces.
4868
b131d535
CY
48692008-12-13 Chong Yidong <cyd@stupidchicken.com>
4870
4871 * xterm.c (x_delete_display): Move xim_close_dpy call to
4872 x_delete_terminal.
4873 (x_delete_terminal): Call xim_close_dpy.
4874
e6df5336
JR
48752008-12-13 Jason Rumney <jasonr@gnu.org>
4876
4877 * w32font.c (intern_font_name): New function.
4878 (add_font_name_to_list, w32_enumfont_pattern_entity): Use it.
4879 (w32font_open_internal, Fx_select_font): Decode font name.
4880 (fill_in_logfont, list_all_matching_fonts): Encode font name.
4881
4882 * w32font.h (intern_font_name): Declare new function.
4883
4884 * w32uniscribe.c (add_opentype_font_name_to_list):
4885 Use intern_font_name.
4886
20d68145
CY
48872008-12-13 Chong Yidong <cyd@stupidchicken.com>
4888
9f2554de
CY
4889 * frame.c (Fdelete_frame): Call free_font_driver_list.
4890
3d9bec9a
CY
4891 * font.c (free_font_driver_list): Implement missing function.
4892
20d68145
CY
4893 * w32term.c (w32_term_init): Don't initialize the image cache
4894 here; it will be done in init_frame_faces.
4895
4896 * xterm.h (struct xim_inst_t): Definition moved from xterm.c.
4897 (struct x_display_info): Remove unused member null_pixel. New
4898 member xim_callback_data.
4899
4900 * xterm.c (struct xim_inst_t): Definition moved to xterm.h.
4901 (xim_initialize): Save pointer to callback function data.
4902 (xim_close_dpy): Free callback function data. Call XCloseIM,
4903 reverting 2008-11-04 change by David Smith.
4904 (x_term_init): Don't initialize the image cache here; it will be
4905 done in init_frame_faces. Remove ancient "null_pixel" cruft.
4906 (x_delete_display): Free x_dnd_atoms member.
4907
96f9306b
KH
49082008-12-13 Kenichi Handa <handa@m17n.org>
4909
6dec9044
JB
4910 * font.c (font_rescale_ratio): Moved from xfaces.c.
4911 Argument type changed. Handle a font-spec too.
96f9306b 4912 (font_score): Check Vface_font_rescale_alist.
6dec9044 4913 (font_open_entity): Likewise. (Bug#1547)
96f9306b
KH
4914
4915 * xfaces.c (font_rescale_ratio): Moved to font.c.
4916
8d5b4964
CY
49172008-12-13 Chong Yidong <cyd@stupidchicken.com>
4918
4919 * xfns.c (Fx_wm_set_size_hint): Check if the frame is an X frame.
4920
e6df5336
JR
49212008-12-12 Jason Rumney <jasonr@gnu.org>
4922
4923 * w32fns.c (x_display_info_for_name, Fx_open_connection): Set
4924 Vwindow_system_version to the real w32 major version.
4925
97c6058a
DN
49262008-12-12 Dan Nicolaescu <dann@ics.uci.edu>
4927
4928 * term.c (init_tty): Move setting the terminal name before the
4929 potential user: maybe_fatal.
4930
ec4e88d7
CY
49312008-12-11 Chong Yidong <cyd@stupidchicken.com>
4932
d4835507
JB
4933 * term.c (tty_free_frame_resources): Renamed from delete_tty_output;
4934 all callers changed. Call free_frame_faces to free the face cache.
ec4e88d7 4935
b4233ec9
JR
49362008-12-11 Jason Rumney <jasonr@gnu.org>
4937
8ec71e23 4938 * w32font.c (fill_in_logfont): Don't assume symbol script means
9acef61c 4939 SYMBOL_CHARSET. (Bug#547)
8ec71e23 4940
b4233ec9 4941 * w32uniscribe.c (uniscribe_encode_char): Increase glyph buffer
9acef61c 4942 size for surrogates. (Bug#1096, bug#872)
b4233ec9 4943
011a0143
JB
49442008-12-11 Juanma Barranquero <lekktu@gmail.com>
4945
4946 * w32proc.c (Fw32_get_locale_info): Decode long form of locale name.
4947
3c309f34
JB
49482008-12-11 Juanma Barranquero <lekktu@gmail.com>
4949
4950 * process.c (Fsystem_process_attributes, syms_of_process):
4951 Fix typo in name of Ssystem_process_attributes.
4952 Reported by Ulrich Mueller <ulm@kph.uni-mainz.de>.
4953
fedc6ab5
JB
49542008-12-11 Juanma Barranquero <lekktu@gmail.com>
4955
4956 * syntax.c (Fmodify_syntax_entry): Doc fix.
4957
ba3de0e8
JB
49582008-12-10 Juanma Barranquero <lekktu@gmail.com>
4959
4960 * font.c (Ffont_spec): Move usage to end of docstring.
4961
174f1c74
JR
49622008-12-10 Jason Rumney <jasonr@gnu.org>
4963
4964 * w32font.c (Qcham): New symbol.
4965 (font_supported_scripts): Add cham, and comments for other new
4966 scripts in bitfield from OpenType spec.
9d32f818
JR
4967 (add_font_entity_to_list): Limit unicode-sip fonts to those that
4968 contain characters beyond the bmp.
174f1c74 4969
7b649478
KH
49702008-12-10 Kenichi Handa <handa@m17n.org>
4971
4972 * ftfont.c (fc_charset_table): Add "unicode-sip".
2ae37cf0 4973 (ftfont_spec_pattern): Lookup fc_charset_table for the registry
7b649478
KH
4974 Qunicode_sip.
4975
2133e2d1
JB
49762008-12-10 Juanma Barranquero <lekktu@gmail.com>
4977
4978 * coding.c (QCdefault_char): Rename from QCdefalut_char.
4979 (Fcoding_system_put): Use QCdefault_char.
4980 (syms_of_coding): Set QCdefault_char, not QCdefalut_char.
4981
9af886ee
CY
49822008-12-09 Chong Yidong <cyd@stupidchicken.com>
4983
74d819eb
CY
4984 * xftfont.c (syms_of_xftfont): Fix typo.
4985
4ccfa1c0 4986 * buffer.c (Fbuffer_swap_text): Signal error if swapping a dead buffer.
9af886ee 4987
7c19d3ae
DN
49882008-12-08 Dan Nicolaescu <dann@ics.uci.edu>
4989
4990 * emacs.c (main): Close daemon_pipe on exec.
4991
567826bb
CY
49922008-12-08 Chong Yidong <cyd@stupidchicken.com>
4993
4994 * termchar.h (struct tty): New members termcap_term_buffer and
4995 termcap_strings_buffer.
4996
4997 * term.c (encode_terminal_code): Free any previous memory blocks
4ccfa1c0 4998 before calling xmalloc for encode_terminal_src or encode_terminal_dst.
567826bb
CY
4999 (maybe_fatal): Buffer argument deleted. Don't free buffer here.
5000 All callers changed.
5001 (init_tty): Store termcap data and string buffers in new struct
5002 tty members termcap_term_buffer and termcap_strings_buffer.
5003 (delete_tty): Free them.
4ccfa1c0 5004 (syms_of_term): Initialize encode_terminal_src and encode_terminal_dst.
567826bb 5005
aa96c42b
SZ
50062008-12-07 Seiji Zenitani <zenitani@mac.com>
5007
5008 * nsfns.m (ns_set_background_color): Remove code duplication.
4ccfa1c0 5009 It was a substitute for face-transparency on OS X 10.3.
aa96c42b 5010
b7e1d896
CY
50112008-12-06 Chong Yidong <cyd@stupidchicken.com>
5012
5013 * coding.c (make_conversion_work_buffer): Disable buffer
5014 modification hooks in the work buffer.
5015
b5ec91a5
EZ
50162008-12-05 Eli Zaretskii <eliz@gnu.org>
5017
5018 * process.c (procfs_system_process_attributes): If `nread' has a
5019 negative value, assign zero to it.
5020
a5d2a52b
CY
50212008-12-05 Chong Yidong <cyd@stupidchicken.com>
5022
68c5540b 5023 * eval.c (Vdebug_on_error): Doc fix.
a5d2a52b 5024
7bf1bb21
KH
50252008-12-05 Kenichi Handa <handa@m17n.org>
5026
5027 * ftfont.c (ftfont_shape_by_flt): Use "combining" flt if the
5028 second character is a combining character.
5029
2fdc7d00
EZ
50302008-12-05 Eli Zaretskii <eliz@gnu.org>
5031
5032 * process.c (procfs_system_process_attributes): Don't use cmd,
5033 cmdsize, and q without initializing them first.
5034
bf6bfba8
JR
50352008-12-04 Jason Rumney <jasonr@gnu.org>
5036
5037 * w32font.c (w32font_draw): Initialize orig_clip before getting
5038 it, and delete it when finished.
5039
a3b1a468
DN
50402008-12-04 Dan Nicolaescu <dann@ics.uci.edu>
5041
5042 * keyboard.c (kbd_buffer_get_event): Follow the non-interactive
5043 case when running as a daemon before detaching.
5044
8b8be8eb
JB
50452008-12-03 Juanma Barranquero <lekktu@gmail.com>
5046
805f2638 5047 * w32.c (init_environment): Don't unload library shell32.dll.
8b8be8eb 5048
b1bde622
KH
50492008-12-03 Kenichi Handa <handa@m17n.org>
5050
e500c47d
KH
5051 * font.c (font_at): Set `multibyte' at first.
5052
ca516334
KH
5053 * coding.c (decode_coding_charset): Check type of an element of
5054 vector VALIDS.
7bf1bb21 5055 (encode_coding_emacs_mule): Be sure to set `code'.
ca516334 5056
4ccfa1c0 5057 * fontset.c (face_for_char): Handle invalid charset property correctly.
b1bde622
KH
5058 (font_for_char): Likewise.
5059
1e5ecd37
CY
50602008-12-03 Chong Yidong <cyd@stupidchicken.com>
5061
d5b01609 5062 * font.c (Fopen_font): Compute pixel size correctly.
ba207571
CY
5063 (font_update_lface): Handle fonts with corrupted size specs,
5064 i.e. non-int and non-float.
d5b01609 5065
11e3a6e4 5066 * ftfont.c (ftfont_match): Initialize entity variable.
9a48c8cb 5067 (ftfont_resolve_generic_family): Avoid using uninitialized var.
8adb3a3b 5068 (ftfont_list_family): Initialize list var earlier.
11e3a6e4 5069
ab06788b
CY
5070 * xselect.c (Fx_get_cut_buffer_internal): Fix memory leak.
5071
1e5ecd37 5072 * xterm.c (x_draw_glyph_string): Fall back on
0cff82ab 5073 underline_minimum_offset for underline position.
1e5ecd37 5074
63c125ab
DN
50752008-12-03 Dan Nicolaescu <dann@ics.uci.edu>
5076
5077 * keyboard.c (read_char_help_form_unwind): Specify the type for ARG.
5078
5079 * character.c (c_string_width): Specify the type for LEN.
5080
3a8406e1
KH
50812008-12-03 Kenichi Handa <handa@m17n.org>
5082
4ccfa1c0 5083 * coding.c (decode_coding_utf_16): Initialize consumed_chars_base to 0.
453b38f0 5084 (decode_coding_utf_8): Likewise.
4ccfa1c0 5085 (detect_coding_system): Initialize utf_16_le_eol to -1, val to Qnil.
4533845d 5086 (produce_chars): Initialize consumed_chars to 0.
3a8406e1 5087
651df7d9
CY
50882008-12-02 Chong Yidong <cyd@stupidchicken.com>
5089
5090 * keyboard.c (make_lispy_position): Only use PT if the selected
5091 window is current.
5092
1f625c6c
AS
50932008-12-02 Andreas Schwab <schwab@suse.de>
5094
f7741ce9
AS
5095 * font.c (font_unparse_fcname): Fix use of uninitialized variable.
5096
1f625c6c
AS
5097 * doprnt.c (doprnt1): Fix size of charbuf.
5098
92bc2678
CY
50992008-12-02 Chong Yidong <cyd@stupidchicken.com>
5100
5101 * keyboard.c (timer_check): Revert last change.
5102
93b9e8cc
JB
51032008-12-02 Juanma Barranquero <lekktu@gmail.com>
5104
5105 * makefile.w32-in ($(BLD)/w32console.$(O)): Fix silly, silly typo.
5106
fd7a37d5
JB
51072008-12-01 Juanma Barranquero <lekktu@gmail.com>
5108
5109 * makefile.w32-in: Update dependencies.
5110 (CONFIG_H): Add $(EMACS_ROOT)/nt/inc/sys/time.h.
5111
c115043b
AS
51122008-12-01 Andreas Schwab <schwab@suse.de>
5113
5114 * font.c (register_font_driver): Use xmalloc.
5115 (font_put_frame_data): Likewise.
5116
f5668d2a
CY
51172008-12-01 Chong Yidong <cyd@stupidchicken.com>
5118
860d96be
CY
5119 * xfaces.c (realize_x_face): Make abort condition clearer.
5120
f5668d2a
CY
5121 * gtkutil.c (update_frame_tool_bar): Initialize variable.
5122
379c17e7
CY
51232008-11-30 Chong Yidong <cyd@stupidchicken.com>
5124
5125 * keyboard.c (timer_check): After a timer runs, ensure that the
5126 selected window's buffer is current.
5127
35f36d65
JB
51282008-11-30 Juanma Barranquero <lekktu@gmail.com>
5129
f952c61c
JB
5130 * makefile.w32-in ($(BLD)/abbrev.$(O)): Remove.
5131 It was accidentally restored by the Unicode merge.
5132
35f36d65
JB
5133 * w32proc.c (Fw32_get_locale_info): Fix typo in docstring.
5134
b23077df
JB
51352008-11-29 Juanma Barranquero <lekktu@gmail.com>
5136
5137 * w32proc.c: Include "coding.h".
5138 (Fw32_short_file_name): Encode filename passed to Windows API.
5139 (Fw32_long_file_name): Encode filename passed to Windows API and
5140 decode back the result. (Bug#1433)
5141
b8ebe9dd
KH
51422008-11-29 Kenichi Handa <handa@m17n.org>
5143
8cc53f96
KH
5144 * charset.h (CHAR_CHARSET_P): Check if the encoder is loaded or
5145 not before accessing it.
5146
b8ebe9dd
KH
5147 * charset.c (Fdefine_charset_internal): After calculating
5148 min_char, max_char, and fastmap, copy the charset structure again.
5149 (encode_char): Fix the previous change.
5150
59bc82c0
SZ
51512008-11-28 Seiji Zenitani <zenitani@mac.com>
5152
5153 * frame.c (x_set_alpha) [NS_IMPL_COCOA]: Call x_set_frame_alpha.
5154
5155 * nsfns.m (ns_frame_parm_handlers): Set alpha handler.
5156
5157 * nsterm.m (x_set_frame_alpha): New function.
5158
32247e3d
EZ
51592008-11-27 Eli Zaretskii <eliz@gnu.org>
5160
5161 * xfaces.c (Fx_font_family_list, syms_of_xfaces): Fix last change.
5162
b003e5ff
JB
51632008-11-27 Juanma Barranquero <lekktu@gmail.com>
5164
5165 * w32font.c (add_font_entity_to_list): Pass the right LOGFONT
5166 pointer to check_face_name.
5167
708550f5
KH
51682008-11-27 Kenichi Handa <handa@m17n.org>
5169
5170 * category.h (SET_CATEGORY_SET): Call set_category_set.
5171 (set_category_set): Extern it.
5172
5173 * category.c (hash_get_category_set): New function.
5174 (Fmodify_category_entry): Adjusted for the change of
5175 char_table_ref_and_range. Call hash_get_category_set to get a
5176 category set to store in the table.
5177
5178 * character.h (MAYBE_UNIFY_CHAR): Call maybe_unify_char instead of
5179 Funify_charset.
5180
2ae37cf0 5181 * charset.h (enum charset_method): Delete CHARSET_METHOD_MAP_DEFERRED.
708550f5
KH
5182 (DECODE_CHAR): Check if the decoder vector is ready.
5183 (ENCODE_CHAR): Check if the encoder char-table is ready.
5184 (maybe_unify_char): Extern it.
5185
5186 * charset.c (Vchar_unified_charset_table): Delete it.
5187 (inhibit_load_charset_map): New variable.
5188 (temp_charset_work): New variable.
5189 (SET_TEMP_CHARSET_WORK_ENCODER, GET_TEMP_CHARSET_WORK_ENCODER)
5190 (SET_TEMP_CHARSET_WORK_DECODER, GET_TEMP_CHARSET_WORK_DECODER):
5191 New macros.
5192 (load_charset_map): Meaning of control_flag changed. If
5193 inhibit_load_charset_map is nonzero, setup a table in
5194 temp_charset_work.
5195 (load_charset): New argument control_flag.
5196 (map_charset_for_dump): New function.
5197 (map_charset_chars): If inhibit_load_charset_map is nonzero, use
5198 map_charset_for_dump.
5199 (Fdefine_charset_internal): If the charset method is MAP, load
5200 mapping tables by calling load_charset.
5201 (Funify_charset): Don't load a mapping table but directly set
5202 Vchar_unify_table.
5203 (maybe_unify_char): New function.
5204 (decode_char): Don't handle the deleted method MAP_DEFERRED.
5205 Handle the case of inhibit_load_charset_map being nonzero.
5206 (encode_char): Don't handle the deleted method MAP_DEFERRED.
5207 Handle the case of inhibit_load_charset_map being nonzero.
5208 (Fclear_charset_maps): Just free temp_charset_work.
5209 (syms_of_charset): Make `inhibit-load-charset-map' a Lisp
5210 variable.
5211
5212 * chartab.c (sub_char_table_ref_and_range): Adjusted for the
5213 change of char_table_ref_and_range.
5214 (char_table_ref_and_range): Change the meaning of argument FROM
5215 and TO. Now the caller must provide initial values for *FROM
5216 and *TO.
5217
5218 * fontset.c (fontset_add): Adjusted for the change of
5219 char_table_ref_and_range.
5220 (fontset_get_font_group): Likewise.
5221 (Ffontset_info): Likewise.
5222
5223 * keymap.c (describe_vector): Adjusted for the change of
5224 char_table_ref_and_range. For char-table, put boundary between
5225 non-ASCII and 8-bit characters.
5226
5227 * print.c (print_object): For bool-vector, delete unnecessary
5228 check of ASCII_BYTE_P.
5229
9196133b
JR
52302008-11-26 Jason Rumney <jasonr@gnu.org>
5231
5232 * w32font.c (w32font_open_internal): Don't include external
9acef61c 5233 leading in font height. (Bug#879)
9196133b 5234
9f688acf
GM
52352008-11-26 Glenn Morris <rgm@gnu.org>
5236
5237 * xfaces.c (Fx_font_family_list): Replace lisp/term/pc-win.el
5238 redefinition with ifdef. (Bug#1383)
5239
90d19aff
AR
52402008-11-24 Adrian Robert <Adrian.B.Robert@gmail.com>
5241
5242 * nsterm.m (ns_get_color): Handle long hex strings (fixes bug #1044).
5243
4ccfa1c0 52442008-11-24 Wolfgang Lux <wolfgang.lux@gmail.com> (tiny change)
90d19aff
AR
5245
5246 * nsterm.m (-otherMouseDown:, -otherMouseUp:, -otherMouseDragged):
5247 New EmacsView methods.
5248 (EV_UDMODIFIERS, EV_BUTTON): Add OtherMouse constants.
5249 Fixes bug #1048,1357,1414.
5250
52512008-11-24 Adrian Robert <Adrian.B.Robert@gmail.com>
5252
5253 Fix bug #1362.
5254 * image.c (x_clear_image_1): Do not free background under HAVE_NS, it
5255 is not an indexed color.
5256 * nsterm.m (free_indexed_color): Add argument checking.
5257 * nsfns.m: Move config.h to before system includes (advised by Dan N.).
5258
e7d5ecb3
CY
52592008-11-24 Chong Yidong <cyd@stupidchicken.com>
5260
5261 * minibuf.c (Fcompleting_read, Vminibuffer_completion_confirm):
5262 Document confirm-after-completion value for
5263 minibuffer-completion-confirm.
5264
c285743c
JR
52652008-11-24 Jason Rumney <jasonr@gnu.org>
5266
5267 * w32font.c (check_face_name): Use xstrcasecmp. Avoid compiler
5268 warning.
5269
b0857706
JR
52702008-11-23 Jason Rumney <jasonr@gnu.org>
5271
5272 * w32uniscribe.c (uniscribe_encode_char): Ensure context is
5273 restored before returning.
5274
5275 * w32font.c (check_face_name): New function.
5276 (add_font_entity_to_list): Use it to filter out common substituted
9acef61c 5277 fonts. (Bug#642)
b0857706 5278
ee50ff07
MR
52792008-11-22 Martin Rudalics <rudalics@gmx.at>
5280
5281 * buffer.c (Fswitch_to_buffer): Reword and mention new option
5282 confirm-nonexistent-file-or-buffer in doc-string.
5283
b8ff72fa
SM
52842008-11-21 Stefan Monnier <monnier@iro.umontreal.ca>
5285
5286 * buffer.c (Fbuffer_swap_text): Remove redundant marker manipulation.
5287 Fix copy/paste typo. Add checks.
5288
cee53ed4
KH
52892008-11-21 Kenichi Handa <handa@m17n.org>
5290
5291 * coding.c (detect_coding_iso_2022): Reject invalid composition
5292 sequence.
5293 (DECODE_COMPOSITION_START): If the current source is the last
5294 block, and the current composition doesn't end, regard this
5295 sequence as invalid.
5296 (decode_coding_iso_2022): Handle invalid composition sequence.
5297
f6ef1e65
MR
52982008-11-20 Martin Rudalics <rudalics@gmx.at>
5299
5300 * window.c (coordinates_in_window): Don't return
5301 ON_VERTICAL_BORDER for the rightmost position of a mode/header
5302 line when the window is not the rightmost one. (Bug#1372)
5303
e08b1705
MR
53042008-11-16 Ben North <ben@redfrontdoor.org> (tiny change)
5305
5306 * buffer.c (syms_of_buffer): Fix doc-string of cursor-type.
5307
ad98e89f
EZ
53082008-11-15 Eli Zaretskii <eliz@gnu.org>
5309
5310 * msdos.c (run_msdos_command): Don't call dos_ttcooked, dos_ttraw,
5311 and bright_bg if noninteractive is non-zero.
5312
fb098a4b
CY
53132008-11-15 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
5314
5315 * xterm.c (x_draw_glyph_string): For stretch glyphs, don't call
5316 x_draw_glyph_string_background.
5317
5318 * w32term.c (x_draw_glyph_string): Likewise.
5319
ce952b6e
CY
53202008-11-15 Chong Yidong <cyd@stupidchicken.com>
5321
5322 * xterm.c (x_draw_glyph_string): Stop drawing the background of
5323 the next glyph string once past the overhang width.
5324
5325 * nsterm.m (ns_draw_glyph_string): Likewise.
5326
5327 * w32term.c (x_draw_glyph_string): Likewise.
5328
26ea7079
CY
53292008-11-14 Fabrice Popineau <fabrice.popineau@supelec.fr> (tiny change)
5330
5331 * fileio.c (Finsert_file_contents): Decrement specpdl_ptr to avoid
5332 double file close.
5333
1c33c906
MR
53342008-11-14 Martin Rudalics <rudalics@gmx.at>
5335
5336 * window.c (window_loop): In DELETE_BUFFER_WINDOWS case, reset
5337 dedicated status of window before attempting to display another
5338 buffer in it.
5339
8fc29035
JB
53402008-11-14 Juanma Barranquero <lekktu@gmail.com>
5341
5342 * msdos.c (Fmsdos_long_file_names):
5343 (syms_of_msdos) <dos-unsupported-char-glyph>:
5344 * dosfns.c (Fint86): Fix typos in docstrings.
5345
55fb4286
EZ
53462008-11-14 Eli Zaretskii <eliz@gnu.org>
5347
5348 * makefile.w32-in (OBJ1, WIN32OBJ): Fix whitespace.
5349
3fda0315
KY
53502008-11-14 Katsumi Yamaoka <yamaoka@jpl.org>
5351
5352 * puresize.h (BASE_PURESIZE): Increase to 1260000.
5353
7e849c17
CY
53542008-11-12 Michal Nazarewicz <mina86@tlen.pl> (tiny change)
5355
5356 * frame.c (x_set_alpha): Set alpha to -1 if nil given.
5357
5358 * frame.h: Negative alpha means "don't touch".
5359
5360 * w32term.c (x_set_frame_alpha): Do nothing if alpha is negative.
5361
5362 * xterm.c (x_set_frame_alpha): Do nothing if alpha is negative.
5363
b9fd67bd
DN
53642008-11-12 Dan Nicolaescu <dann@ics.uci.edu>
5365
5366 * hftctl.c:
5367 * chpdef.h:
5368 * acldef.h: Remove files used only for systems no longer supported.
5369
5370 * Makefile.in: Fix .o alphabetical ordering.
5371 (hftctl.o): Remove dependency, file removed.
5372 (keymap.o, print.o): Depend on charset.h.
5373
d5998e03
KH
53742008-11-10 Kenichi Handa <handa@m17n.org>
5375
2ae37cf0 5376 * character.c (Fget_byte): Fix and make it faster for unibyte target.
d5998e03 5377
be70e183
CY
53782008-11-08 Chong Yidong <cyd@stupidchicken.com>
5379
5380 * dired.c (file_name_completion): If completion_ignore_case is
5381 enabled, ignore case when checking completion-regexp-list.
5382
7cf94eac
EZ
53832008-11-08 Eli Zaretskii <eliz@gnu.org>
5384
5385 * vm-limit.c (get_lim_data): Fix last change.
5386
ee107a89
KH
53872008-11-08 Kenichi Handa <handa@m17n.org>
5388
5389 * character.c (Fget_byte): New function.
5390 (syms_of_character): Defsubr Fget_byte.
5391
5fd15622
CY
53922008-11-07 Chong Yidong <cyd@stupidchicken.com>
5393
5394 * xdisp.c (try_window_reusing_current_matrix): Ensure that window
5395 cursor position is valid after scrolling.
5396
13d62fad
JB
53972008-11-06 Juanma Barranquero <lekktu@gmail.com>
5398
5399 * fns.c (Frandom): Rename arg N to LIMIT to match the docs; doc fix.
5400
a1dd2936
GM
54012008-11-06 Glenn Morris <rgm@gnu.org>
5402
5403 * xterm.c (handle_one_xevent): Don't let popup menus cause
5404 mouse-autoselect-window related window switching. (Bug#1261)
5405
860cd236
CY
54062008-11-04 David Smith <davidsmith@acm.org> (tiny change)
5407
5408 * xterm.c (xim_close_dpy): Avoid double-free on X11R6 XIM.
5409
653a3150
AS
54102008-11-04 Andreas Schwab <schwab@suse.de>
5411
5412 * xfns.c (Fx_wm_set_size_hint): Add missing return value.
5413
870f5cac
CY
54142008-11-03 Chong Yidong <cyd@stupidchicken.com>
5415
5416 * xfns.c (Fx_wm_set_size_hint): New function.
5417
1e02f3cb
MR
54182008-11-03 Martin Rudalics <rudalics@gmx.at>
5419
5420 * textprop.c (Fprevious_single_char_property_change): Return 0
5421 when there's no change in a string. (Bug#1301)
5422
e630dfc6
MR
54232008-11-02 Martin Rudalics <rudalics@gmx.at>
5424
5425 * frame.c (do_switch_frame): New argument NORECORD passed to
5426 Fselect_window.
5427 (Fselect_frame): New argument NORECORD passed to
5428 do_switch_frame.
5429 (Fset_frame_selected_window): New argument NORECORD passed to
5430 Fselect_frame.
5431 (Fhandle_switch_frame, Fdelete_frame): Handle NORECORD argument
5432 in call of do_switch_frame.
5433 (Fset_mouse_position, Fset_mouse_pixel_position, Fraise_frame):
5434 Handle NORECORD argument in call of Fselect_frame.
5435 * lisp.h (do_switch_frame, Fselect_frame)
5436 (Fset_frame_selected_window): Adjust declarations.
5437 * window.c (select_frame_norecord): New function.
5438 (run_window_configuration_change_hook): Use it and call
5439 Fselect_frame with NORECORD set.
5440 (Fselect_window): Pass NORECORD to Fselect_frame.
5441 (Fset_window_configuration): Handle NORECORD argument in call of
5442 do_switch_frame.
5443 * minibuf.c (choose_minibuf_frame): Handle NORECORD in call of
5444 Fset_frame_selected_window.
5445 * keyboard.c (command_loop_1): Handle NORECORD in call of
5446 Fselect_frame (currently ifdefd).
5447
9020b223
GM
54482008-11-02 Ulrich Mueller <ulm@kph.uni-mainz.de>
5449
5450 * emacs.c (USAGE2): Untabify.
5451
793ffee8
SM
54522008-11-01 Stefan Monnier <monnier@iro.umontreal.ca>
5453
5454 * composite.c (fill_gstring_header): Fix copy/paste typo.
5455
ab6d1131
MR
54562008-10-31 Martin Rudalics <rudalics@gmx.at>
5457
5458 * window.c (Fnext_window, Fprevious_window): Rewrite doc-string.
5459 (Fother_window): Rename argument and rewrite doc-string.
5460 (select_window_norecord): Fix return value. (Bug#1276)
5461
601a9cf1
JB
54622008-10-30 Juanma Barranquero <lekktu@gmail.com>
5463
5464 * w32fns.c (x_create_tip_frame): Prevent default foreground color for
5465 new frames overriding foreground for tooltips. Based on similar patch
5466 from Martin Rudalics <rudalics@gmx.at>. (Bug#1032)
5467
813b0652
CY
54682008-10-29 Chong Yidong <cyd@stupidchicken.com>
5469
5470 * emacs.c (Fdaemon_initialized): Initialize nfd.
5471
4414f58f
MR
54722008-10-29 Martin Rudalics <rudalics@gmx.at>
5473
5474 * window.c (Fwindow_height, Fdelete_window, set_window_buffer)
5475 (Fwindow_text_height): Clarify doc-strings.
5476 * xdisp.c (syms_of_xdisp): Mention set-window-buffer in
5477 doc-string of window-scroll-functions.
5478
ecdcaa09
RS
54792008-10-28 Reiner Steib <Reiner.Steib@gmx.de>
5480
5481 * category.c (syms_of_category): Fix typo in docstring.
5482
23fe745a
JB
54832008-10-28 Juanma Barranquero <lekktu@gmail.com>
5484
5485 * window.c (Fwindowp, Fwindow_live_p, Fwindow_minibuffer_p)
5486 (Fcoordinates_in_window_p, Fscroll_left, Fscroll_right):
5487 Fix typos in docstrings.
5488
ff808935
DN
54892008-10-28 Dan Nicolaescu <dann@ics.uci.edu>
5490
5491 * emacs.c (daemon_pipe): Make non-static.
5492 (IS_DAEMON): Move definition ...
5493 * lisp.h (IS_DAEMON): ... here.
5494 (daemon_pipe): Declare.
5495 (is_daemon): Remove.
5496 * dispnew.c (init_display): Use IS_DAEMON.
5497
fc012771
SM
54982008-10-28 Stefan Monnier <monnier@iro.umontreal.ca>
5499
5500 * xdisp.c (pos_visible_p, redisplay_internal, message3_nolog)
5501 (message2_nolog): Check FRAME_INITIAL_P instead of noninteractively.
5502
5503 * emacs.c (is_daemon): Remove.
5504 (main): Don't set is_daemon.
5505 (IS_DAEMON): New macro.
5506 (Fdaemonp, Fdaemon_initialized): Use it.
601a9cf1 5507 (Fdaemon_initialized): Write a char into the pipe to make sure the
fc012771
SM
5508 parent exits.
5509 (syms_of_emacs): Explicitly initialize daemon_pipe[1].
5510
d8bdbe6f
CY
55112008-10-27 Chong Yidong <cyd@stupidchicken.com>
5512
d1a072bf
CY
5513 * nsterm.m (ns_draw_window_cursor): When hbar cursor is on
5514 over-sized glyph, draw it with the default glyph width.
5515
e2e325aa
CY
5516 * w32term.c (x_draw_bar_cursor): When hbar cursor is on over-sized
5517 glyph, draw it with the default glyph width.
5518
5519 * xterm.c (x_draw_bar_cursor): When hbar cursor is on over-sized
5520 glyph, draw it with the default glyph width.
5521
d8bdbe6f
CY
5522 * xdisp.c (try_scrolling): When computing the distance from the
5523 scroll margin to PT, try moving some distance past the window
5524 bottom before giving up.
5525
7bfac547
MR
55262008-10-27 Martin Rudalics <rudalics@gmx.at>
5527
5528 * window.c (Fwindow_dedicated_p, Fset_window_dedicated_p)
5529 (Fset_window_buffer): Explain in doc-string that a window can be
5530 "strongly" dedicated to its buffer.
5531
4ff029f6
DN
55322008-10-27 Dan Nicolaescu <dann@ics.uci.edu>
5533
5534 * emacs.c (daemon_name): New variable.
5535 (main): Deal with --daemon=SERVER_NAME.
5536 (Fdaemonp): Return a name if one was passed to --daemon.
5537
5790ef40
DN
55382008-10-26 Romain Francoise <romain@orebokech.com>
5539
f9bd0df9 5540 * emacs.c (daemon_pipe): New variable.
5790ef40
DN
5541 (main): Create a pipe before forking, make the parent exit only after
5542 the child has closed its end of the pipe. Move closing the
5543 descriptors ...
5544 (Fdaemon_initialized): ... here. New function.
5545
f5385255
SM
55462008-10-26 Stefan Monnier <monnier@iro.umontreal.ca>
5547
4d632321
SM
5548 * chartab.c (Foptimize_char_table): Make sure `ascii' doesn't point to
5549 the previous unoptimized table.
5550
f5385255
SM
5551 * window.c (Fset_window_buffer): Undo 2008-10-18 change to re-instate
5552 the distinction between non-nil and non-t value of `dedicated'.
5553
6c56a0f3
CY
55542008-10-25 Chong Yidong <cyd@stupidchicken.com>
5555
5556 * keyboard.c (read_char_minibuf_menu_prompt): Ensure that
f5385255 5557 read_char_minibuf_menu_text is large enough to hold the menu string.
6c56a0f3 5558
fec89261
MR
55592008-10-25 Martin Rudalics <rudalics@gmx.at>
5560
5561 * window.c (Fget_buffer_window, Fdelete_windows_on)
5562 (Freplace_buffer_in_windows): Make buffer argument optional and
5563 rename to buffer_or_name.
5564
34fcddd0
CY
55652008-10-24 Chong Yidong <cyd@stupidchicken.com>
5566
f5385255
SM
5567 * xdisp.c (handle_single_display_spec, handle_display_prop):
5568 Undo 2005-05-16 change.
34fcddd0
CY
5569 (handle_stop): Pop iterator if it's loaded with an empty string.
5570 (get_overlay_strings_1): Don't save iterator if it's loaded with
5571 an empty string (bug#1201).
5572
064766f2
KH
55732008-10-24 Kenichi Handa <handa@m17n.org>
5574
5575 * ftfont.c (ftfont_otf_features): Fix previous change.
5576 (ftfont_otf_capability): Check FeatureList.FeatureCount before
5577 calling ftfont_otf_features.
5578
f9bd0df9 55792008-10-24 Kenichi Handa <handa@m17n.org>
064766f2
KH
5580
5581 * font.c (font_match_p): Fix for the case that a vector of
5582 characters is in script-representative-chars.
5583
1dae9197
MA
55842008-10-24 Michael Albinus <michael.albinus@gmx.de>
5585
5586 * dbusbind.c (xd_in_read_queued_messages): New variable.
f5385255 5587 (XD_SIGNAL1, XD_SIGNAL2, XD_SIGNAL3): New macros. Throw Qdbus_error.
1dae9197
MA
5588 (xd_read_queued_messages): Catch Qdbus_error from the macros.
5589 (all): Replace xsignal1, xsignal2, xsignal3 by the respective
777013f2 5590 macro. (Bug#1186)
1dae9197 5591
f9bd0df9 55922008-10-23 Ali Bahrami <ali_gnu@emvision.com> (tiny change)
9b3362b8
DN
5593
5594 * s/sol2-10.h: New file.
5595
878a4584
JB
55962008-10-23 Juanma Barranquero <lekktu@gmail.com>
5597
5598 * xdisp.c (fill_glyph_string): Fix typo in source (though the
5599 poor beast has survived 9+ years and the jump from xterm.c!).
5600
cd265ca6
MR
56012008-10-23 Martin Rudalics <rudalics@gmx.at>
5602
5603 * buffer.c (Fget_buffer_create): Rename arg to buffer_or_name.
5604 Reword doc-string.
f5385255 5605 (Fbury_buffer): In doc-string say what happens to the buffer's window.
cd265ca6 5606
472a4dc9
JB
56072008-10-23 Juanma Barranquero <lekktu@gmail.com>
5608
5609 * character.c (syms_of_character) <script-representative-chars>:
5610 <unicode-category-table>: Doc fixes.
5611
159bd5a2
NF
56122008-10-23 Noah Friedman <friedman@splode.com>
5613
5614 * coding.c (make_conversion_work_buffer): Check that
5615 Vcode_conversion_reused_workbuf is a live buffer, otherwise call
5616 Fget_buffer_create.
5617
49f9c344
KH
56182008-10-23 Kenichi Handa <handa@m17n.org>
5619
5620 * font.c (font_add_log): Check the values of extra properties.
5621
12bb3111
MR
56222008-10-22 Martin Rudalics <rudalics@gmx.at>
5623
5624 * window.c (Fwindow_dedicated_p, Fset_window_dedicated_p):
5625 Reword doc-string.
5626 (Fset_window_parameter): Use NILP.
5627 (Fscroll_up, Fscroll_down, Fminibuffer_selected_window)
f5385255 5628 (Frecenter): Use "selected" instead of "current" window in doc-strings.
12bb3111 5629
bbeb4e99
JB
56302008-10-22 Juanma Barranquero <lekktu@gmail.com>
5631
5632 * xdisp.c (next_element_from_buffer): Remove bogus xassert condition.
5633
56342008-10-22 Adrian Robert <Adrian.B.Robert@gmail.com>
cb83c00b
AR
5635
5636 * nsfns.m (ns_appkit_version): New function.
5637 (x-server-version): Use it.
5638 (syms_of_nsfns): Define ns-version-string here, not nsterm.m.
5639 (x-server-vendor): Don't check_ns().
5640
5641 * nsterm.m (syms_of_nsterm): Drop ns-version-string.
5642
a9b555d3
JB
56432008-10-22 Juanma Barranquero <lekktu@gmail.com>
5644
5645 * w32fns.c (unwind_create_frame) [!GLYPH_DEBUG]: Fix xassert.
5646 Copied from 2005-02-03 change to xfns.c by Kim F. Storm.
5647
4626499f
KH
56482008-10-22 Kenichi Handa <handa@m17n.org>
5649
e3681952
KH
5650 * syntax.c (scan_words): Call word_boundary_p instead of comparing
5651 scripts.
5652
4626499f
KH
5653 * category.c (word_boundary_p): Check scripts instead of charset.
5654 Handle nil value in word-separating-categories and
5655 word-combining-categories.
5656 (syms_of_category): Fix docstrings of word-separating-categories
5657 and word-combining-categories.
5658
1560f91a
EZ
56592008-10-21 Eli Zaretskii <eliz@gnu.org>
5660
5661 * coding.c (Fencode_coding_region, Fdecode_coding_region)
5662 (Fdecode_coding_string, Fencode_coding_string): Doc fix.
5663
f4668441
MR
56642008-10-21 Martin Rudalics <rudalics@gmx.at>
5665
5666 * buffer.c (Fget_buffer, Fbury_buffer, switch_to_buffer_1):
5667 Rename arg "buffer" to "buffer_or_name".
5668 (Fkill_buffer): Rename arg "buffer" to "buffer_or_name" and make
5669 it optional.
5670 (no_switch_window): Remove since the return value is not used.
a9b555d3 5671 (Fswitch_to_buffer): Rename arg "buffer" to "buffer_or_name".
f4668441
MR
5672 Consider window as dedicated when Fwindow_dedicated_p returns a
5673 non-nil value.
5674 * lisp.h: Remove prototype for no_switch_window.
5675
fd75ddb2
JD
56762008-10-21 Jan Djärv <jan.h.d@swipnet.se>
5677
5678 * emacs.c (main): Unconditionally set PER_LINUX32 and exec
2ae37cf0 5679 temacs when dumping if HAVE_PERSONALITY_LINUX32 is defined.
fd75ddb2 5680
07295713
KH
56812008-10-21 Kenichi Handa <handa@m17n.org>
5682
5683 * coding.c (detect_coding_charset): For iso-8859-* coding systems,
5684 check Vlatin_extra_code_table.
5685
712adc82
EZ
56862008-10-20 Eli Zaretskii <eliz@gnu.org>
5687
5688 * fileio.c (Fset_file_modes): Doc fix.
5689
f549eb0b
MA
56902008-10-19 Michael Albinus <michael.albinus@gmx.de>
5691
5692 * dbusbind.c (XD_OBJECT_TO_DBUS_TYPE): Handle simple type symbols
5693 in arrays.
5694
aac0c6e3
MR
56952008-10-19 Martin Rudalics <rudalics@gmx.at>
5696
5697 * window.c (Fwindow_dedicated_p, Fset_window_dedicated_p):
5698 Mention kill-buffer in doc-string.
5699 (Fset_window_buffer): Reinsert tem check removed in last commit.
5700 (Fenlarge_window, Fshrink_window): Have argument names and
5701 doc-string follow Elisp manual more closely.
5702
57032008-10-18 Eli Zaretskii <eliz@gnu.org>
5704
5705 * fileio.c (Fset_file_modes): Doc fix.
5706
57072008-10-18 Martin Rudalics <rudalics@gmx.at>
5708
5709 * window.c (Fwindow_width, Fset_window_start)
5710 (Fwindow_parameters, Fwindow_parameter, Fset_window_parameter)
f5385255
SM
5711 (Fdelete_windows_on, Freplace_buffer_in_windows):
5712 Make doc-strings follow code and Elisp manual more closely.
aac0c6e3
MR
5713 (Fwindow_dedicated_p): Make window argument optional.
5714 (Fset_window_dedicated_p): Rename argument "arg" to "flag".
5715 (Fset_window_buffer): Respect any non-nil dedicated value for
5716 window. Rename "buffer" argument to "buffer_or_name".
5717
57182008-10-18 Ulrich Mueller <ulm@gentoo.org>
5719
5720 * m/sh3.h: New file, machine description for SuperH.
5721
57222008-10-17 Martin Rudalics <rudalics@gmx.at>
5723
5724 * window.c (Fsplit_window): Rename arg horflag to horizontal.
5725
57262008-10-17 Kenichi Handa <handa@m17n.org>
5727
5728 * ftfont.c (ftfont_otf_features): Fix indexing
5729 gsub_gpos->FeatureList.Feature. Check the validity of indices.
5730
57312008-10-16 Magnus Henoch <mange@freemail.hu>
5732
5733 * dbusbind.c (Fdbus_call_method): Unbreak usage line.
5734 (Fdbus_call_method_asynchronously): Ditto.
5735 This change makes C-h f display the argument list.
5736
57372008-10-16 Chong Yidong <cyd@stupidchicken.com>
5738
5739 * fileio.c (Fexpand_file_name): Doc fix.
5740
5741 * xfaces.c (Finternal_set_lisp_face_attribute): Make null values
5742 of :foreground and :background equivalent to unspecified (20.x
5743 compatibility).
5744
57452008-10-15 Eli Zaretskii <eliz@gnu.org>
5746
5747 * buffer.c (syms_of_buffer): Doc fix.
5748
57492008-10-14 Kenichi Handa <handa@m17n.org>
5750
5751 * font.c (font_clear_prop): When clearing font width, clear the
5752 average width field too.
5753
57542008-10-12 Andreas Schwab <schwab@suse.de>
5755
5756 * ftfont.c (ftfont_shape_by_flt): Make static.
5757 * ftfont.h (ftfont_shape_by_flt): Don't declare.
5758
5759 * font.c: Don't include <m17n-flt.h>.
5760
57612008-10-10 Eli Zaretskii <eliz@gnu.org>
5762
5763 * s/msdos.h (SYSTEM_PURESIZE_EXTRA): Decrease to 10000.
5764
57652008-10-09 Eli Zaretskii <eliz@gnu.org>
5766
5767 * frame.c (make_terminal_frame) [MSDOS]: Remove unused #ifdef'ed
5768 away code.
5769
57702008-10-09 Chong Yidong <cyd@stupidchicken.com>
5771
5772 * dispnew.c (update_text_area): Avoid looping due to large glyph
5773 overhangs (bug#1070).
5774
57752008-10-09 Kenichi Handa <handa@m17n.org>
5776
5777 * fontset.c (face_for_char): If face->fontset is negative, just
5778 return ascii_face.
5779
f5385255
SM
5780 * font.c (font_delete_unmatched): Fix previous change.
5781 Don't reject an entity if DPI and AVGWIDTH of an entity are 0.
aac0c6e3
MR
5782
57832008-10-09 Martin Rudalics <rudalics@gmx.at>
5784
5785 * frame.c (Fraise_frame): On text-only terminals select frame in
5786 order to make it visible. (Bug#1061)
5787
57882008-10-08 Chong Yidong <cyd@stupidchicken.com>
5789
5790 * fontset.c (fontset_find_font): Check frame validity.
5791
57922008-10-07 Chong Yidong <cyd@stupidchicken.com>
5793
a9b555d3 5794 * gtkutil.c (xg_display_open): Reset default display if none exists.
aac0c6e3
MR
5795 (xg_display_close): Allow Emacs to close all displays (bug#985).
5796
57972008-10-06 Andreas Schwab <schwab@suse.de>
5798
f5385255 5799 * sysdep.c (sys_signal): Always set SA_RESTART when noninteractively.
aac0c6e3
MR
5800
58012008-10-06 Chong Yidong <cyd@stupidchicken.com>
5802
f5385255 5803 * emacs.c (Vbefore_init_time, Vafter_init_time): Move from startup.el.
aac0c6e3 5804
a9b555d3 5805 * lisp.h (Vbefore_init_time, Vafter_init_time): Declare.
aac0c6e3
MR
5806
5807 * gtkutil.c (x_wm_set_size_hint): Return immediately if called
5808 during initialization.
5809
58102008-10-04 Eli Zaretskii <eliz@gnu.org>
5811
5812 * xdisp.c (redisplay_internal): If frame switched, redisplay the
5813 whole thing on MSDOS frames as well as on a TTY.
5814
5815 * dispnew.c (update_frame): Flush termscript for MSDOS frames as
5816 well as for TTY.
5817 (Fopen_termscript): Allow opening a termscript on MSDOS frames as
5818 well as on a TTY.
5819
5820 * sysdep.c (init_sys_modes): Set FRAME_GARBAGED_P for MSDOS frames
5821 as well as for TTY.
5822
5823 * systime.h (EMACS_TIME_CMP): Cast EMACS_SECS values to `long'.
5824
5825 * dispnew.c (change_frame_size_1): Set FrameRows and FrameCols for
5826 MSDOS frames as well.
5827
58282008-10-02 Adrian Robert <Adrian.B.Robert@gmail.com>
5829
5830 * image.c (x_clear_image_1): Under NS, call ns_free_indexed_color with
5831 correct arguments.
b71ac3dd 5832 * menu.c (find_and_return_menu_selection): Add cast.
aac0c6e3
MR
5833
58342008-10-03 Glenn Morris <rgm@gnu.org>
5835
5836 * emacs.c (USAGE1): Add --daemon.
5837
58382008-10-02 Eli Zaretskii <eliz@gnu.org>
5839
5840 * process.c (procfs_system_process_attributes): Multiply `pcpu' by
5841 100, so it's in percents as advertised.
5842
58432008-10-02 Adrian Robert <Adrian.B.Robert@gmail.com>
5844
5845 * nsterm.h (ns_cursor_types, ns_output.desired_cursor_color)
5846 (ns_output.current_cursor, ns_output.desired_cursor)
5847 (ns_output.last_inactive, FRAME_CURSOR, FRAME_NEW_CURSOR)
5848 (FRAME_NEW_CURSOR_COLOR): Remove.
5849
5850 * nsfns.m (ns_set_cursor_color): Use FRAME_CURSOR_COLOR.
a9b555d3 5851 (ns_lisp_to_cursor_type, ns_cursor_type_to_lisp): Use core Emacs
aac0c6e3
MR
5852 enumeration (HOLLOW_BOX_CURSOR, etc.).
5853
5854 * nsterm.m (ns_frame_rehighlight): Remove commented code.
5855 (draw_window_cursor): Simplify code.
f5385255
SM
5856 (EmacsView-windowDidBecomeKey:,-windowDidResignKey:):
5857 Don't change cursor type. In latter, call rehighlight instead of doing
aac0c6e3 5858 updates manually.
a9b555d3
JB
5859 (EmacsPrefsController-setPanelFromValues,-setValuesFromPanel):
5860 Use core Emacs cursor types.
aac0c6e3 5861
b8ff72fa 5862 * xdisp.c (draw_glyphs): Don't call notice_overwritten_cursor under NS.
aac0c6e3
MR
5863
58642008-10-02 Martin Rudalics <rudalics@gmx.at>
5865
5866 * process.c (Faccept_process_output): Fix doc-string.
5867
58682008-10-02 Dan Nicolaescu <dann@ics.uci.edu>
5869
5870 * gmalloc.c (__sbrk): Also define for uClibc.
5871
5872 * s/gnu-linux.h (GNU_LIBRARY_PENDING_OUTPUT_COUNT): Add definition
5873 for uClibc.
5874
58752008-10-01 Adrian Robert <Adrian.B.Robert@gmail.com>
5876
5877 * nsfont.m (nsfont_spec_to_traits): Use UnXX masks only for non-normal
5878 styles.
5879 (nsfont_open): Reenable the cache.
5880
58812008-10-01 Adrian Robert <Adrian.B.Robert@gmail.com>
5882
5883 * font.c (font_matching_entity): Reflect ATTRS in font selection.
5884 (font_find_for_lface) [HAVE_NS]: Don't ignore case.
5885
58862008-09-30 Stefan Monnier <monnier@iro.umontreal.ca>
5887
5888 * dispnew.c (Fsend_string_to_terminal): Don't try to send a string to
5889 a suspended terminal.
5890
58912008-09-30 Michael Albinus <michael.albinus@gmx.de>
5892
5893 * dbusbind.c (xd_signature): Use strcat instead of sprintf.
5894
58952008-09-30 Eli Zaretskii <eliz@gnu.org>
5896
5897 * Makefile.in (MSDOS_SUPPORT): Remove ccl.elc and codepage.elc.
5898
58992008-09-30 Chong Yidong <cyd@stupidchicken.com>
5900
5901 * xdisp.c (move_it_to): Don't advance the iterator if the last tab
5902 in a continued line coincides with a line beginning.
5903
59042008-09-29 Adrian Robert <Adrian.B.Robert@gmail.com>
5905
5906 * nsfont.m (nsfont_trait_distance): Fix bug.
5907 (nsfont_list): Return a list rather than a vector (syncs with Handa
5908 changes of 2008-05-14).
5909 (nsfont_open): Improve logging.
5910
59112008-09-29 Andreas Schwab <schwab@suse.de>
5912
5913 * keyboard.c (syms_of_keyboard) <input-decode-map>: Doc fix.
5914
59152008-09-28 Martin Rudalics <rudalics@gmx.at>
5916
5917 * character.c (Fchar_resolve_modifiers): Rewrite Elisp function
5918 name as char-resolve-modifiers.
5919 Reported by: Markus Triska <markus.triska@gmx.at>
5920
59212008-09-28 Dan Nicolaescu <dann@ics.uci.edu>
5922
5923 * dispnew.c (init_display): Return earlier when running as a daemon.
5924
59252008-09-27 Adrian Robert <Adrian.B.Robert@gmail.com>
5926
5927 * nsfont.m (nsfont_draw): Fix up composition rendering (cmp_from, ...).
5928
59292008-09-27 Eli Zaretskii <eliz@gnu.org>
5930
5931 * composite.c (Fcomposition_get_gstring)
5932 (Fcompose_region_internal, Fcompose_string_internal)
5933 (Ffind_composition_internal): Doc fix.
5934 (syms_of_composite) <compose-chars-after-function>: Doc fix.
5935 (syms_of_composite) <auto-composition-function>: Doc fix.
5936 (syms_of_composite) <composition-function-table>: Doc fix.
5937
59382008-09-25 Chong Yidong <cyd@stupidchicken.com>
5939
5940 * search.c (wordify): New argument for lax word-ends.
5941 (Fword_search_forward_lax, Fword_search_backward_lax): New funs.
5942
59432008-09-24 Dan Nicolaescu <dann@ics.uci.edu>
5944
5945 * lisp.h (is_daemon): Declare.
5946 * dispnew.c (init_display): Do not try to initialize the terminal
5947 when running as a daemon.
5948
59492008-09-22 Chong Yidong <cyd@stupidchicken.com>
5950
5951 * nsfns.m (compute_tip_xy): Use x_display_pixel_width and
5952 x_display_pixel_height.
5953
59542008-09-22 Martin Rudalics <rudalics@gmx.at>
5955
5956 * undo.c (record_point): Don't call Fundo_boundary for first
5957 change. (Bug#731)
5958
59592008-09-22 Juanma Barranquero <lekktu@gmail.com>
5960
5961 * emacs.c (Fdaemonp): Doc fix.
5962
59632008-09-22 Dan Nicolaescu <dann@ics.uci.edu>
5964
5965 * emacs.c (main): Place #ifdef in the proper place.
5966
59672008-09-21 Dan Nicolaescu <dann@ics.uci.edu>
5968
5969 * emacs.c (standard_args): Add --daemon.
5970 (main): Disconnect from the terminal when --daemon is passed.
5971 (is_daemon): New variable.
5972 (Fdaemonp): New function.
5973 (syms_of_emacs): Defsubr it.
5974
59752008-09-20 Chong Yidong <cyd@stupidchicken.com>
5976
5977 * xdisp.c (get_next_display_element): Handle string display
5978 correctly when checking for the end of a box run.
5979
59802008-09-20 Glenn Morris <rgm@gnu.org>
5981
5982 * fileio.c (Qdelete_by_moving_to_trash): New Lisp_Object.
5983 (syms_of_fileio): Add Qdelete_by_moving_to_trash.
5984 (Frename_file): Avoid copying to trash if a rename involves
5985 a delete. (Bug#964).
5986
59872008-09-20 Eli Zaretskii <eliz@gnu.org>
5988
5989 * keyboard.c (Fset_quit_char, Fset_input_meta_mode)
5990 (Fset_output_flow_control, Fcurrent_input_mode): Support MSDOS
5991 frames as well as termcap frames.
5992 (handle_interrupt): Remove "#ifndef MSDOS" around the call to
5993 get_named_tty.
5994
59952008-09-19 Eli Zaretskii <eliz@gnu.org>
5996
5997 * process.c (procfs_system_process_attributes): Fix cmdline in
5998 case /proc/PID/cmdline is empty.
5999
6000 * xterm.c (x_wm_set_size_hint): Use x_display_pixel_width and
6001 x_display_pixel_height.
6002
60032008-09-19 Juanma Barranquero <lekktu@gmail.com>
6004
6005 * frame.c (x_fullscreen_adjust): Declare var as Display_Info.
6006
6007 * w32fns.c (Fx_display_pixel_width, Fx_display_pixel_height)
6008 (compute_tip_xy): Use x_display_pixel_width, x_display_pixel_height.
6009
60102008-09-19 Dan Nicolaescu <dann@ics.uci.edu>
6011
6012 * dispextern.h (struct it): Move line_wrap away from the middle of
6013 bitfields. Move voffset in struct iterator_stack_entry after the
6014 bitfields. Move tab_width near after another short.
6015
60162008-09-18 Dan Nicolaescu <dann@ics.uci.edu>
6017
6018 * frame.h (struct frame): Move alpha from the middle of bitfields.
6019
6020 * window.h (struct window): Move frozen_window_start_p after the
6021 rest of the bitfields to reduce padding.
6022
60232008-09-18 Chong Yidong <cyd@stupidchicken.com>
6024
6025 * xterm.h (x_display_info): Remove `height' and `width' members.
6026
6027 * nsterm.h (ns_display_info): Remove `height' and `width' members.
6028
6029 * w32term.h (w32_display_info): Remove `height', `width',
6030 `height_in', and `width_in' members.
6031
b8ff72fa
SM
6032 * xterm.c (x_display_pixel_height, x_display_pixel_width):
6033 New functions.
aac0c6e3
MR
6034 (x_calc_absolute_position): Use them.
6035 (x_term_init): Omit removed `height' and `width' members.
6036
b8ff72fa
SM
6037 * w32term.c (x_display_pixel_height, x_display_pixel_width):
6038 New functions.
aac0c6e3
MR
6039 (w32_read_socket, x_calc_absolute_position): Use them.
6040 (w32_initialize_display_info, w32_term_init): Omit removed members
6041 of w32_display_info.
6042
b8ff72fa
SM
6043 * nsterm.m (x_display_pixel_height, x_display_pixel_width):
6044 New functions.
6045 (ns_initialize_display_info): Omit removed members of ns_display_info.
aac0c6e3 6046
b8ff72fa
SM
6047 * xterm.c (x_display_pixel_height, x_display_pixel_width):
6048 New functions.
aac0c6e3
MR
6049 (x_calc_absolute_position): Use them.
6050 (x_term_init): Omit removed `height' and `width' members.
6051
6052 * xfns.c (Fx_display_pixel_width, Fx_display_pixel_height)
b8ff72fa
SM
6053 (compute_tip_xy):
6054 * frame.c (x_fullscreen_adjust):
aac0c6e3
MR
6055 * xmenu.c (menu_position_func): Use x_display_pixel_height and
6056 x_display_pixel_width.
6057
60582008-09-18 Kenichi Handa <handa@m17n.org>
6059
6060 * composite.c (fill_gstring_header): Don't check FROM and TO here.
6061 (composition_compute_stop_pos): Fix handling of static composition.
6062 (Fcomposition_get_gstring): Check FROM and TO at first.
6063
60642008-09-17 Stefan Monnier <monnier@iro.umontreal.ca>
6065
46e722a9 6066 * composite.c (Fcomposition_get_gstring): Yet another int/Lisp_Object
aac0c6e3
MR
6067 mixup (YAILOM).
6068
60692008-09-17 Chong Yidong <cyd@stupidchicken.com>
6070
6071 * indent.c (Fvertical_motion): Use position reported by iterator
6072 instead of PT for determining screen motion (bug#943).
6073
60742008-09-17 Romain Francoise <romain@orebokech.com>
6075
6076 * composite.c (composition_adjust_point): Fix int/EMACS_INT mixup.
6077
60782008-09-17 Kenichi Handa <handa@m17n.org>
6079
6080 * ftfont.c (ftfont_shape_by_flt): Downcase family name.
6081
6082 * composite.c (Fcomposition_get_gstring): Make bigger gstring_work
6083 if necessary.
6084
60852008-09-16 Kenichi Handa <handa@m17n.org>
6086
6087 * coding.c (make_conversion_work_buffer): Avoid calling
6088 Fget_buffer_create if it is not necessary.
6089
60902008-09-15 Martin Rudalics <rudalics@gmx.at>
6091
6092 * window.c (Fselect_window): Don't update window_select_count and
6093 use_time when norecord is not nil.
6094
60952008-09-14 Kenichi Handa <handa@m17n.org>
6096
6097 * fileio.c (Finsert_file_contents): Delete incorrect decrement of
6098 specpdl_ptr.
6099
61002008-09-12 Kenichi Handa <handa@m17n.org>
6101
6102 * indent.c (scan_for_column): Don't handle automatic composition
6103 if the current buffer is not associated with a window.
6104
6105 * composite.c (composition_reseat_it): If the current buffer is
6106 not associated with a window, ignore the automatic composition.
6107 (find_automatic_composition): Likewise.
6108
61092008-09-12 Stefan Monnier <monnier@iro.umontreal.ca>
6110
6111 * term.c (close_gpm): New fun extracted from Fgpm_mouse_stop.
6112 (Fgpm_mouse_stop): Use it.
6113 * termhooks.h (close_gpm): Declare.
6114 * keyboard.c (tty_read_avail_input): Forcefully close the gpm
6115 connection if Gpm_GetEvent fails.
6116
6117 * window.c (set_window_buffer): Always preserve current-buffer.
6118
61192008-09-12 Glenn Morris <rgm@gnu.org>
6120
6121 * charset.c (init_charset): Warn if etc/charsets not found. (Bug#909)
6122
61232008-09-11 Glenn Morris <rgm@gnu.org>
6124
6125 * charset.c (charset-map-path): Doc fix.
6126
61272008-09-10 Kenichi Handa <handa@m17n.org>
6128
6129 * xdisp.c (handle_composition_prop): Set it->cmp_it.ch to -1.
6130
6131 * font.c (Ffont_shape_gstring): Make glyphs of non-nil adjustment
6132 compose a grapheme cluster with the preceding base glyph.
6133
6134 * composite.c (composition_compute_stop_pos): Fix previous change.
6135 Reset cmp_it->id to -1 at first.
6136
61372008-09-10 Glenn Morris <rgm@gnu.org>
6138
6139 * Makefile.in (character.o, chartab.o): Fix config.h typo.
6140
61412008-09-09 Chong Yidong <cyd@stupidchicken.com>
6142
6143 * keyboard.c (read_key_sequence): Reapply translation maps when
6144 switching keyboards.
6145
61462008-09-09 Kenichi Handa <handa@m17n.org>
6147
6148 * ftfont.c (ftfont_shape_by_flt): Use "combining" FLT for ASCII
6149 characters.
6150
6151 * composite.c (FORWARD_CHAR): Fix calculation
6152 of (POSITION).pos_byte.
6153 (composition_compute_stop_pos): Limit the search of composition to
6154 at most 500 characters ahead. If we reach the limit or find a
6155 newline, set cmp_it->ch to -2 and return 0.
6156 (composition_reseat_it): Handle the case that cmp_it->ch is -2.
6157
61582008-09-08 Kenichi Handa <handa@m17n.org>
6159
6160 * indent.c (Fvertical_motion): Be sure to set
6161 it_overshoot_expected if it.cmp_it.id is non-negative.
6162
61632008-09-07 Andreas Schwab <schwab@suse.de>
6164
6165 * callproc.c (Fcall_process): Don't hold references to string data
6166 across garbage collection. Move initialisation of new_argv down
6167 to avoid compiler bug.
6168
61692008-09-07 Roland Winkler <Roland.Winkler@physik.uni-erlangen.de>
6170
6171 * process.c (Fsystem_process_attributes): Doc fix.
6172
61732008-09-07 Chong Yidong <cyd@stupidchicken.com>
6174
6175 * callproc.c (Fcall_process): Canonicalize current directory name.
6176
6177 * xdisp.c (move_it_to): When moving by vpos, ensure that the
6178 iterator advances to the next line if the current line ends in a
6179 continued tab.
6180
61812008-09-07 Teodor Zlatanov <tzz@lifelogs.com>
6182
6183 * nsfont.m (nsfont_draw): Fix the references to missing gidx data
6184 member to point to cmp_from.
6185
6186 * xdisp.c: Doc fix for references to gidx data member.
6187
61882008-09-07 Stefan Monnier <monnier@iro.umontreal.ca>
6189
6190 * buffer.c (Fbuffer_swap_text): Reset window->point markers.
6191
61922008-09-07 Kenichi Handa <handa@m17n.org>
6193
6194 * composite.c (FORWARD_CHAR): Check STOP after
6195 incrementing (POSITION).pos.
6196
61972008-09-06 Roland Winkler <Roland.Winkler@physik.uni-erlangen.de>
6198
6199 * process.c (Fsystem_process_attributes): Doc fix.
6200
62012008-09-06 Chong Yidong <cyd@stupidchicken.com>
6202
6203 * keyboard.c (Ftop_level): Doc fix.
6204
62052008-09-06 Eli Zaretskii <eliz@gnu.org>
6206
6207 * xmenu.c (xmenu_show) [!HAVE_X_WINDOWS]: If frame has a
6208 minibuffer, don't let lower part of menu invade the echo area.
6209
6210 * msdos.c (IT_menu_display): Use STRING_CHAR_ADVANCE instead of a
6211 "char *q" to access menu text and advance through it. Revert the
6212 change that displayed ">" instead of ASCII character 0x10.
6213
62142008-09-05 Eli Zaretskii <eliz@gnu.org>
6215
6216 * menu.c (single_menu_item) [!HAVE_BOXES]: Enable emulation of
6217 toggle boxes and radio buttons on MS-DOS as well.
6218
62192008-09-05 Kenichi Handa <handa@m17n.org>
6220
6221 * composite.c (autocmp_chars): Check lookback count.
6222 (composition_compute_stop_pos): Set cmp_it->lookback.
6223 (composition_reseat_it): Check lookback count.
6224 (struct position_record): New struct.
6225 (FORWARD_CHAR, BACKWARD_CHAR, CHAR_COMPOSABLE_P): New macros.
6226 (find_automatic_composition): New function.
6227 (composition_adjust_point): Use find_automatic_composition.
6228
6229 * dispextern.h (struct composition_it): New member lookback.
6230
62312008-09-02 Chong Yidong <cyd@stupidchicken.com>
6232
6233 * indent.c (Fvertical_motion): Don't call move_it_by_lines again
6234 if moving by a single line.
6235
62362008-09-02 Andreas Schwab <schwab@suse.de>
6237
6238 * xterm.c (x_delete_display): Fix merge error.
6239
6240 * fileio.c (Fexpand_file_name): Remove unused variables.
6241
62422008-09-02 Eli Zaretskii <eliz@gnu.org>
6243
6244 * fileio.c (Fexpand_file_name): Copy argument `name' into local
6245 storage on all platforms, not just on DOS_NT.
6246
62472008-09-02 Jason Rumney <jasonr@gnu.org>
6248
b8ff72fa
SM
6249 * w32menu.c (Fx_popup_menu, Fx_popup_dialog, w32_menu_show):
6250 Ensure mouse is not grabbed after menu is finished.
aac0c6e3
MR
6251
62522008-09-01 Chong Yidong <cyd@stupidchicken.com>
6253
6254 * xfaces.c (Finternal_set_alternative_font_family_alist)
6255 (Finternal_set_alternative_font_registry_alist): Properly copy
6256 entire alist structure.
6257
62582008-09-01 Kenichi Handa <handa@m17n.org>
6259
d66c0241 6260 * ftfont.c (ftfont_spec_pattern): Don't create a charset if the
aac0c6e3 6261 representative chars of the script is a vector.
d66c0241
JB
6262 (ftfont_list): Handle the case where the representative chars of
6263 the script is a vector.
aac0c6e3
MR
6264
6265 * character.c (syms_of_character): Docstring of
6266 script-representative-chars fixed.
6267
62682008-08-31 Eli Zaretskii <eliz@gnu.org>
6269
6270 * msdos.c (BUILD_CHAR_GLYPH): New macro.
6271 (IT_menu_display): Use it instead of SET_CHAR_GLYPH to construct
6272 the menu. Allocate larger buffer for `text', to account for
6273 possible ^C characters.
6274
62752008-08-31 Martin Rudalics <rudalics@gmx.at>
6276
6277 * xdisp.c (prepare_menu_bars): Don't call
6278 Vwindow_size_change_functions with arg Qt.
6279
62802008-08-31 Stefan Monnier <monnier@iro.umontreal.ca>
6281
6282 * font.h (font_range):
6283 * fileio.c (report_file_error):
46e722a9
SM
6284 * composite.c (composition_update_it): Yet another int/Lisp_Object
6285 mixup (YAILOM).
aac0c6e3
MR
6286
62872008-08-30 Glenn Morris <rgm@gnu.org>
6288
6289 * data.c (Fmake_variable_frame_local): Doc fix.
6290
6291 * frame.c (Fmodify_frame_parameters): Doc fix.
6292
62932008-08-30 Eli Zaretskii <eliz@gnu.org>
6294
6295 * w32.c (init_user_info): Allocate buf[] with xmalloc using the size
6296 needed by GetTokenInformation.
6297 (w32_system_process_attributes): Check return values of all system
6298 APIs.
6299
6300 * msdos.c (IT_display_cursor): Write "CURSOR ON/OFF" to termscript
6301 only when the state changes.
6302 (IT_update_begin, IT_update_end): Add termscript trace.
6303
6304 * w16select.c (Fw16_set_clipboard_data): Don't encode text if
6305 clipboard is unavailable. Set dst to NULL if it doesn't point to
6306 malloc'ed data.
6307 (Fw16_get_clipboard_data): Initialize htext to NULL, to avoid
6308 passing random values to xfree.
6309
6310 * dispnew.c (init_display): Set `tty's association in frame's
b8ff72fa 6311 parameters alist to the name of the terminal device, if that is known.
aac0c6e3
MR
6312
63132008-08-29 Jason Rumney <jasonr@gnu.org>
6314
6315 * w32uniscribe.c (uniscribe_check_otf): Don't fallback on DFLT script.
6316
63172008-08-29 Eli Zaretskii <eliz@gnu.org>
6318
6319 * composite.c (fill_gstring_body): Avoid compiler warnings.
6320
6321 * font.c (font_fill_lglyph_metrics): Use EMACS_INT in
6322 LGLYPH_SET_CODE to avoid compiler warnings.
6323
2ae37cf0 6324 * makefile.w32-in ($(BLD)/w32uniscribe.$(O)): Depend on composite.h.
aac0c6e3
MR
6325
6326 * composite.h (LGLYPH_SET_CODE): Cast `val' to EMACS_INT.
6327
6328 * w32uniscribe.c (uniscribe_shape): Shut up compiler warning in
6329 LGLYPH_SET_CODE.
6330
63312008-08-29 Kenichi Handa <handa@m17n.org>
6332
6333 * fileio.c (report_file_error): Don't downcase the first character
6334 of errstring if it is still unibyte.
6335
63362008-08-29 Kenichi Handa <handa@m17n.org>
6337
6338 These changes are to re-implement the automatic composition so
6339 that it doesn't use text properties.
6340
6341 * Makefile.in (ftfont.o): Depend on composite.h.
6342 (composite.o): Depend dispextern.h, font.h, frame, and window.h.
6343
6344 * character.h (Vunicode_category_table): Extern it.
6345
6346 * character.c (Vunicode_category_table): New variable.
6347 (syms_of_character): DEFVAR_LISP Vunicode_category_table.
6348
6349 * chartab.c (optimize_sub_char_table): Perform more greedy
6350 optimization.
6351
b8ff72fa
SM
6352 * composite.h (enum composition_method):
6353 Delete COMPOSITION_WITH_GLYPH_STRING.
aac0c6e3
MR
6354 (COMPOSITION_METHOD): Don't check COMPOSITION_WITH_GLYPH_STRING.
6355 (Vcomposition_function_table): Extern it.
6356 (LGSTRING_XXX, LGLYPH_XXX): Macros moved from font.h.
6357 (composition_gstring_put_cache, composition_gstring_from_id)
6358 (composition_gstring_p, composition_gstring_width)
6359 (composition_compute_stop_pos, composition_reseat_it)
6360 (composition_update_it, composition_adjust_point): Extern them.
6361 (Fcomposition_get_gstring): EXFUN it.
6362
d66c0241 6363 * composite.c: Include window.h, frame.h, dispextern.h, font.h.
aac0c6e3
MR
6364 (Vcomposition_function_table)
6365 (get_composition_id): Don't handle COMPOSITION_WITH_GLYPH_STRING.
b8ff72fa
SM
6366 (gstring_hash_table, gstring_work, gstring_work_headers):
6367 New variables.
aac0c6e3
MR
6368 (gstring_lookup_cache, composition_gstring_put_cache)
6369 (composition_gstring_from_id, composition_gstring_p)
6370 (composition_gstring_width, fill_gstring_header)
6371 (fill_gstring_body, autocmp_chars, composition_compute_stop_pos)
6372 (composition_reseat_it, composition_update_it)
b8ff72fa 6373 (composition_adjust_point, Fcomposition_get_gstring): New functions.
aac0c6e3
MR
6374 (syms_of_composite): Initialize gstring_hash_table, gstrint_work,
6375 and gstring_work_headers. DEFVAR_LISP composition-function-table.
6376 Defsubr compostion_get_gstring.
6377
6378 * dispextern.h (struct glyph): New union u.cmp. Delete the member
6379 cmp_id.
6380 (struct glyph_string): Delete the member gidx. New members
6381 cmp_id, cmp_from, and cmp_to.
6382 (enum it_method): Delete GET_FROM_COMPOSITION.
6383 (struct composition_it): New struct.
6384 (struct it): New member cmp_it, and iterator_stack_entry.cmp_it.
6385 Delete c, len, cmp_id, cmp_len in u.comp.
6386
6387 * font.h (enum lgstring_indices): Delete it.
b8ff72fa 6388 (LGSTRING_XXX, LGLYPH_XXX): Move these macros to composite.h.
aac0c6e3 6389 (enum lglyph_indices): Likewise.
b8ff72fa 6390 (font_range): Adjust extern.
aac0c6e3
MR
6391 (font_fill_lglyph_metrics): Extern it.
6392
6393 * font.c (QCf): New variable.
6394 (check_gstring): Use LGSTRING_GLYPH_LEN, not LGSTRING_LENGTH.
6395 (font_prepare_composition): Delete this function.
6396 (font_range): Type and arguments changed.
6397 (Ffont_make_gstring, Ffont_fill_gstring): Delete them.
6398 (font_fill_lglyph_metrics): New function.
b8ff72fa 6399 (Ffont_shape_text): Rename to Ffont_shape_gstring and change arguments.
aac0c6e3 6400 (syms_of_font): DEFSYM QCf. Delete defsubr for
b8ff72fa
SM
6401 Sfont_make_gstring, Sfont_fill_gstring, Sfont_shape_text.
6402 Defsubr Sfont_shape_gstring.
aac0c6e3
MR
6403
6404 * fontset.h (font_for_char): Extern it.
6405
6406 * fontset.c (font_for_char): New function.
6407
6408 * ftfont.c: Include composite.h.
6409 (ftfont_resolve_generic_family): Add langset "en" to pattern.
b8ff72fa 6410 (ftfont_shape_by_flt): Use LGSTRING_GLYPH_LEN, not LGSTRING_LENGTH.
aac0c6e3
MR
6411
6412 * indent.c: Include composite.h and dispextern.h.
6413 (check_composition): Delete this function.
6414 (scan_for_column): Handle composition by
6415 composition_compute_stop_pos, composition_reseat_it, and
6416 composition_update_it.
6417 (compute_motion): Likewise.
6418 (Fvertical_motion): Fix checking of composition.
6419
6420 * keyboard.c (adjust_point_for_property): Check composition by
6421 composition_adjust_point.
6422
b8ff72fa 6423 * nsterm.m (ns_draw_glyph_string): Adjust for the change of
aac0c6e3
MR
6424 struct glyph_string.
6425
b8ff72fa
SM
6426 * term.c (encode_terminal_code): Adjust for the change of struct glyph.
6427 (append_composite_glyph): Adjust for the change of struct it and
aac0c6e3
MR
6428 struct glyph.
6429 (produce_composite_glyph): Likewise.
6430
b8ff72fa
SM
6431 * w32term.c (x_draw_composite_glyph_string_foreground):
6432 Adjust for the change of struct glyph_string.
aac0c6e3
MR
6433 (x_draw_glyph_string): Likewise.
6434
6435 * w32uniscribe.c (struct uniscribe_font_info): Include composite.h.
6436 (uniscribe_shape): Use LGSTRING_GLYPH_LEN, not LGSTRING_LENGTH.
6437
6438 * xdisp.c: Include font.h.
6439 (it_props): Delete the entry for Qauto_composed.
6440 (init_iterator): Initialize it->cmp_it.id to -1.
6441 (compute_stop_pos): Call composition_compute_stop_pos.
b8ff72fa 6442 (face_before_or_after_it_pos): Adjust for the change of struct it.
aac0c6e3
MR
6443 (handle_auto_composed_prop): Delete it.
6444 (handle_composition_prop): Handle only static composition.
6445 (next_overlay_string): Remove it->method == GET_FROM_COMPOSITION
6446 from xassert. Initialize it->cmp_it.stop_pos.
b8ff72fa 6447 (push_it): Adjust for the change of struct it.
aac0c6e3
MR
6448 (pop_it): Likewise.
6449 (get_next_element): Delete next_element_from_composition.
6450 (CHAR_COMPOSED_P): New macro.
6451 (get_next_display_element): For automatic composition, get a face
6452 from the font in the glyph-string.
6453 (set_iterator_to_next): For GET_FROM_BUFFER and GET_FROM_STRING,
b8ff72fa 6454 check composition by it->cmp_it.id. Delete GET_FROM_COMPOSITION case.
aac0c6e3
MR
6455 (next_element_from_string): Check if the character at the current
6456 position is composed by CHAR_COMPOSED_P.
6457 (next_element_from_buffer): Likewise.
d66c0241
JB
6458 (next_element_from_composition): Adjust for the change of struct it.
6459 Update it->cmp_it.
b8ff72fa
SM
6460 (dump_glyph): Adjust for the change of struct glyph.
6461 (fill_composite_glyph_string): Adjust for the change of struct
aac0c6e3
MR
6462 it and struct glyph. Don't handle automatic composition here.
6463 (fill_gstring_glyph_string): New function.
6464 (x_get_glyph_overhangs): Handle automatic composition.
b8ff72fa 6465 (BUILD_COMPOSITE_GLYPH_STRING): Adjust for the change of struct glyph.
aac0c6e3
MR
6466 (BUILD_GSTRING_GLYPH_STRING): New macro.
6467 (BUILD_GLYPH_STRINGS): Call BUILD_GSTRING_GLYPH_STRING for
6468 automatic composition.
b8ff72fa 6469 (append_composite_glyph): Adjust for the change of struct it and
aac0c6e3 6470 struct glyph.
b8ff72fa 6471 (x_produce_glyphs): Adjust for the change of struct it.
aac0c6e3 6472
b8ff72fa 6473 * xterm.c (x_draw_composite_glyph_string_foreground): Adjust for
aac0c6e3
MR
6474 the change of struct glyph_string.
6475 (x_draw_glyph_string): Likewise.
6476
64772008-08-29 Glenn Morris <rgm@gnu.org>
6478
6479 * buffer.c (word-wrap): Doc fix.
6480 * xdisp.c (truncate-partial-width-windows): Doc fix.
6481 Increase default to 50.
6482
64832008-08-29 Chong Yidong <cyd@stupidchicken.com>
6484
6485 * xdisp.c (update_tool_bar_unwind): New function.
6486 (update_tool_bar): Temporarily set selected frame before building
6487 tool-bar items.
6488
64892008-08-28 Michael Albinus <michael.albinus@gmx.de>
6490
6491 * dbusbind.c (XD_ERROR, XD_DEBUG_MESSAGE): Use strncpy and
6492 snprintf, respectively.
6493 (xd_append_arg): Convert strings with Fstring_make_unibyte.
6494
64952008-08-28 Chong Yidong <cyd@stupidchicken.com>
6496
6497 * Makefile.in: Revert (undocumented) 2008-08-20 change adding
6498 LDFLAGS to GNUstep CC invocation.
6499
65002008-08-27 Chong Yidong <cyd@stupidchicken.com>
6501
6502 * indent.c (Fvertical_motion): Revert last change. Handle the
6503 general case where we are moving forward, and PT spans multiple
6504 screen lines.
6505
6506 * eval.c (find_handler_clause): Temporarily increase
6507 max-lisp-eval-depth while printing the backtrace buffer, to
6508 guarantee that help-mode code can run.
6509
65102008-08-27 Eli Zaretskii <eliz@gnu.org>
6511
6512 * msdos.c (Fmsdos_remember_default_colors): Don't reverse frame
6513 colors under -rv.
6514 (IT_set_frame_parameters): Don't swap foreground and background
6515 colors if `(reverse . t)' is present in the frame properties.
6516 (internal_terminal_init): Call init_frame_faces only for the
6517 initial frame.
6518
65192008-08-27 Andreas Schwab <schwab@suse.de>
6520
6521 * dired.c (Ffile_attributes): Avoid compiler warning in bitshift.
6522
65232008-08-27 Andreas Schwab <schwab@suse.de>
6524
6525 * search.c (search_buffer): Set char_base to zero only at the end.
6526
65272008-08-27 Kenichi Handa <handa@m17n.org>
6528
b8ff72fa 6529 * fileio.c (report_file_error): Fix handling of multibyte error string.
aac0c6e3
MR
6530
65312008-08-27 Andreas Seltenreich <seltenreich@gmx.de>
6532
6533 * xterm.c (x_term_init): Temporarily hide the partially
6534 initialized terminal while calling vendor-specific-keysyms.
6535
65362008-08-26 Eli Zaretskii <eliz@gnu.org>
6537
6538 * msdos.c (internal_terminal_init): Most initializations done only
6539 once, especially initial_screen_colors[] and termscript open.
6540
65412008-08-26 Chong Yidong <cyd@stupidchicken.com>
6542
6543 * eval.c (Fcondition_case): Doc fix.
6544
6545 * widgetprv.h (EmacsFramePart): Change font member to the new font
6546 struct.
6547
6548 * widget.c: Include character.h and font.h for XSETFONT.
6549 (setup_frame_gcs): Compute X font id from font struct, just once.
6550
65512008-08-26 Eli Zaretskii <eliz@gnu.org>
6552
6553 * term.c (get_named_tty): Fix last change.
6554
65552008-08-26 Chong Yidong <cyd@stupidchicken.com>
6556
6557 * indent.c (Fvertical_motion): If moving forward starting from a
b8ff72fa 6558 multi-line string, move the iterator to the last line of that string.
aac0c6e3
MR
6559
65602008-08-25 Eli Zaretskii <eliz@gnu.org>
6561
6562 * frame.c (do_switch_frame): Mark previously displayed frame as
6563 obscured for FRAME_MSDOS_P frames as well.
6564
65652008-08-24 Eli Zaretskii <eliz@gnu.org>
6566
6567 * frame.c (make_terminal_frame): Initialize f->terminal,
6568 f->terminal->reference_count, and scroll bars on MS-DOS as well.
6569 Set the top frame to newly created frame.
6570 (Fmake_terminal_frame): Reuse the_only_display_info.
6571
6572 * vm-limit.c (get_lim_data) [MSDOS]: Use alternative methods of
6573 estimating available memory.
6574
b97439ce 65752008-08-23 David Reitter <david.reitter@gmail.com>
aac0c6e3
MR
6576
6577 * nsterm.m (ns_draw_window_cursor): Don't call
6578 NSDisableScreenUpdates and NSEnableScreenUpdates on
6579 non-NS_IMPL_COCOA systems.
6580
65812008-08-23 Andreas Schwab <schwab@suse.de>
6582
6583 * process.c (procfs_system_process_attributes): Fix use of
6584 uninitialized variables.
6585
65862008-08-23 Eli Zaretskii <eliz@gnu.org>
6587
6588 * emacs.c (main) [MSDOS]: Call syms_of_xmenu.
6589
6590 * dispnew.c (init_display): Remove MS-DOS specific conditions for
6591 calling tty-set-up-initial-frame-faces.
6592
b8ff72fa
SM
6593 * xmenu.c (Fx_popup_dialog, Fx_popup_menu, xmenu_show):
6594 Allow MSDOS frames along with X frames.
aac0c6e3
MR
6595
6596 * termhooks.h (TERMINAL_ACTIVE_P): Handle output_msdos_raw in
6597 addition to output_termcap.
6598
6599 * xdisp.c (redisplay_internal) [MSDOS]: Don't call set_tty_color_mode.
6600
6601 * termchar.h (FRAME_TTY): Support output_msdos_raw.
6602 (struct tty_display_info) [MSDOS]: Add fields related to mouse
6603 highlight.
6604
6605 * process.c [!subprocesses]: Define QCname.
6606 (syms_of_process): Intern and staticpro it.
6607
6608 * w16select.c (Fw16_set_clipboard_data, Fw16_get_clipboard_data):
b8ff72fa
SM
6609 Adjust for changes in encoding/decoding routines.
6610 Use encode_coding_object and decode_coding_object instead of
aac0c6e3
MR
6611 encode_coding and decode_coding.
6612
b8ff72fa 6613 * sysdep.c (init_sys_modes): Call dos_ttraw with tty_out as argument.
aac0c6e3
MR
6614
6615 * dosfns.c: Include frame.h before termhooks.h.
6616 (dos_cleanup): Use CURTTY ()->termscript instead of a global
6617 variable termscript.
6618
6619 * s/msdos.h (USER_FULL_NAME): Define.
6620 (SYSTEM_PURESIZE_EXTRA): Bump up to 100K.
6621
6622 * editfns.c (USER_FULL_NAME): Define to pw->pw_gecos if undefined.
6623 (Fuser_full_name): Use USER_FULL_NAME instead of a literal
6624 pw->pw_gecos.
6625
6626 * keyboard.c (handle_interrupt) [MSDOS]: Call cursor_to with
6627 SELECTED_FRAME as additional (1st) argument.
6628 (tty_read_avail_input): Handle output_msdos_raw in
6629 addition to output_termcap.
6630
6631 * msdos.c: Include frame.h before termhooks.h.
6632 (mouse_on, mouse_off, mouse_moveto, mouse_init)
6633 (msdos_set_cursor_shape, IT_set_face, IT_write_glyphs)
6634 (show_mouse_face, IT_clear_end_of_line, IT_clear_screen)
6635 (IT_clear_to_end, IT_cursor_to, IT_display_cursor, IT_cmgoto)
6636 (IT_set_terminal_modes, IT_reset_terminal_modes)
6637 (IT_set_frame_parameters): Use tty->termscript instead of a global
6638 variable termscript.
6639 (IT_write_glyphs): Use tty->terminal->terminal_coding instead of a
6640 global variable terminal_coding. Don't refer to
6641 Vnonascii_translation_table.
6642 (internal_terminal_init): Set Vwindow_system in current_kboard.
6643 Don't use TTY_CHAR_INS_DEL_OK. Set Vinitial_window_system.
6644 Announce date and time of session start, if termscript is open.
6645 Don't zero out the_only_display_info (it is done in
b8ff72fa
SM
6646 term.c:init_tty). Open termscript only of not already open.
6647 Log "SCREEN SAVED" here, instead of IT_set_terminal_modes. Init mouse
aac0c6e3
MR
6648 here instead of dos_ttraw. Don't initialize display if this is an
6649 initial tty. Don't set FRAME_FONT.
6650 (Vwindow_system_version): Bump to 23.
6651 (dos_ttraw): Accept a TTY argument; all callers fixed. If mouse
6652 is available, set up mouse_position_hook.
6653 (dos_ttraw, IT_set_terminal_modes): If called with initial
6654 terminal, do nothing.
6655 (IT_set_frame_parameters): Handle the Qtty_type frame
6656 parameter by calling internal_terminal_init.
6657 (dos_set_window_size, show_mouse_face)
6658 (clear_mouse_face, IT_note_mode_line_highlight)
6659 (IT_note_mouse_highlight, IT_update_begin, IT_frame_up_to_date)
6660 (dos_rawgetc): Use tty_display_info instead of x_display_info.
6661 (initialize_msdos_display): New function.
6662 (IT_cursor_to, IT_clear_to_end, IT_clear_screen)
6663 (IT_clear_end_of_line, IT_insert_glyphs, IT_write_glyphs)
6664 (IT_delete_glyphs, IT_ring_bell, IT_reset_terminal_modes)
6665 (IT_set_terminal_modes, IT_set_terminal_window, IT_update_begin):
b8ff72fa 6666 Accept additional argument: a pointer to a frame. Update all callers.
aac0c6e3
MR
6667 (request_sigio, unrequest_sigio): Don't define, now defined on
6668 sysdep.c.
6669 (IT_write_glyphs): Rewrite to use encode_terminal_code.
6670
6671 * term.c [MSDOS]: Include msdos.h.
6672 (init_tty) [MSDOS]: Reuse most of WINDOWSNT branch. Change cpp
6673 conditional to DOS_NT. Allow only one call to this function in a
6674 session. Don't allocate a new struct tty_display_info; instead,
6675 reuse the_only_display_info. Call get_tty_size to get screen
6676 dimensions. Call init_baud_rate to set bad_rate.
6677 (dissociate_if_controlling_tty) [MSDOS]: Ifdef away function body.
6678 (Fsuspend_tty) [MSDOS]: Don't close input and output.
b8ff72fa 6679 (Fresume_tty) [MSDOS]: Don't reopen the TTY; instead, use stdin/stdout.
aac0c6e3
MR
6680 (get_tty_terminal, get_named_tty, Ftty_type)
6681 (Fcontrolling_tty_p): Handle output_msdos_raw in addition to
6682 output_termcap.
b8ff72fa
SM
6683 (Fresume_tty, Fsuspend_tty, init_tty, delete_tty):
6684 Call add_keyboard_wait_descriptor and delete_keyboard_wait_descriptor
2ae37cf0 6685 only when subprocesses are supported.
aac0c6e3
MR
6686
6687 * frame.c (make_terminal_frame) [MSDOS]: Adjust initialization of
6688 f->output_data.x.
6689 (Fmake_terminal_frame) [MSDOS]: Don't allow creation of new
6690 terminal devices.
6691
5582fbc7 6692 * msdos.h: Remove definition of struct x_display_info and struct
aac0c6e3
MR
6693 x_output.
6694 (FRAME_FONT): Use output_data.tty.
6695 (FRAME_FOREGROUND_PIXEL, FRAME_BACKGROUND_PIXEL): Don't define.
b8ff72fa
SM
6696 (struct x_display_info): Rename from display_info. Update all users in
6697 msdos.c.
aac0c6e3 6698 (struct x_output): Remove background_pixel and foreground_pixel.
b8ff72fa 6699 (the_only_display_info): Rename from the_only_x_display.
aac0c6e3
MR
6700 (dos_ttraw): Update prototype.
6701
6702 * Makefile.in (MSDOS_OBJ): Add xmenu.o.
6703 (SOME_MACHINE_LISP): Add ../lisp/term/pc-win.elc.
6704
67052008-08-23 Jason Rumney <jasonr@gnu.org>
6706
6707 * image.c (enum tiff_keyword_index, tiff_format): Add :index keyword.
6708 (fn_TIFFSetDirectory): New library function used.
6709 (init_tiff_functions) [HAVE_NTGUI]: Initialize it.
6710 (tiff_load): Use :index to select among multiple images. Set count
6711 property when multiple images exist.
6712 (gif_format): Use :index, not :image.
6713
67142008-08-23 Chong Yidong <cyd@stupidchicken.com>
6715
6716 * xdisp.c (try_scrolling): Check INT_MAX instead of
6717 MOST_POSITIVE_FIXNUM for maximum integer value. Include limits.h
6718 to obtain INT_MAX.
6719
67202008-08-21 İsmail Dönmez <ismail@namtrac.org> (tiny change)
6721
6722 * xterm.c (x_delete_display): Don't call XrmDestroyDatabase on GTK+.
6723
67242008-08-21 Christian Faulhammer <opfer@gentoo.org> (tiny change)
6725
6726 * Makefile.in (temacs${EXEEXT}): On GNUstep, link to appropriate
6727 GNUstep library location.
6728
67292008-08-21 Chong Yidong <cyd@stupidchicken.com>
6730
6731 * xfaces.c (x_update_menu_appearance): Check validity of menu font
6732 before using it.
6733
6734 * puresize.h (BASE_PURESIZE): Increase to 1250000.
6735
67362008-08-20 Adrian Robert <Adrian.B.Robert@gmail.com>
6737
6738 * nsfns.m (ns-read-file-name): Add casts to avoid warning.
6739 (ns-convert-utf8-nfd-to-nfc): Warn if cannot execute correctly.
6740 * nsfont.m (nsfont_draw): Compare indexed colors to 0, not nil.
6741 * nsterm.h (EmacsView-unlockFocusNeedsFlush:): Add declaration.
6742 (EmacsApp-cursor_blink_handler): Remove declaration.
6743 * nsterm.m (ns_draw_glyph_string): Update first conditional body to
6744 match 01 Feb 2008 changes in xterm.c.
6745 (ns_read_socket): Add cast to avoid warning.
6746 (EmacsApp-application:openFiles:): Don't call replyToOpenOrPrint: on
6747 GNUstep.
6748
67492008-08-20 Chong Yidong <cyd@stupidchicken.com>
6750
6751 * xselect.c (x_get_foreign_selection): Return nil if desired
6752 selection could not be obtained, instead of signalling an error.
6753
67542008-08-20 David Reitter <david.reitter@gmail.com>
6755
6756 * nsfns.m (ns_lisp_to_cursor_type): Replace with generic xfns.c.
6757 * nsterm.m: Remove ns-specific code for cursor blinking.
6758 (ns_draw_window_cursor): Clear cursor properly rather than
6759 redrawing the area. Respect width of bar cursors.
6760 These changes enable the use of generic blink-cursor-mode and
6761 generic cursor types in NS and support smooth cursor movements (do
6762 not blink off after command).
6763 * xdisp.c (get_phys_cursor_geometry): Redraw wider rectangle on
6764 Nextstep, too.
6765
67662008-08-19 Kenichi Handa <handa@m17n.org>
6767
6768 * font.c (Vfont_log_deferred): New variable.
6769 (font_add_log): Check Vfont_log_deferred.
6770 (font_deferred_log): New function.
6771
6772 * font.h (font_deferred_log): Extern it.
6773
6774 * fontset.c (reorder_font_vector): Use encoding charset of fonts
6775 for sorting.
6776 (face_for_char): Use deferred log.
6777
67782008-08-18 Kenichi Handa <handa@m17n.org>
6779
6780 * fontset.c (face_for_char): Add font log.
6781
6782 * font.c (font_add_log): Add the font properties :script, :lang,
6783 and :otf in the log.
6784
67852008-08-17 Chong Yidong <cyd@stupidchicken.com>
6786
6787 * xdisp.c: Remove dead code.
6788 (handle_invisible_prop, next_overlay_string): Defer call to
6789 setup_for_ellipsis.
6790 (handle_stop, set_iterator_to_next): Call setup_for_ellipsis.
6791
67922008-08-15 Chong Yidong <cyd@stupidchicken.com>
6793
6794 * xfaces.c (lookup_derived_face): Properly handle possible zero
6795 return value of get_lface_attributes.
6796 (merge_faces): Don't tell lookup_derived_face to signal an error
6797 if face is not found.
6798
6799 * dired.c (Fdirectory_files): Doc fix.
6800
6801 * process.c (make_process): Initialize kill_without_query struct
6802 member.
6803
68042008-08-15 Eli Zaretskii <eliz@gnu.org>
6805
6806 * w32.c (w32_system_process_attributes) [_MSC_VER < 1300]:
6807 Alternative calculation of totphys for Visual Studio 6.
6808
6809 * w32fns.c [_MSC_VER && _MSC_VER < 1300]: Declare HMONITOR.
6810
6811 * w32.c (_MEMORY_STATUS_EX, MEMORY_STATUS_EX, LPMEMORY_STATUS_EX):
6812 Rename from _MEMORYSTATUSEX, MEMORYSTATUSEX, LPMEMORYSTATUSEX.
6813 All users changed.
6814 (stat): Only root directory passed to GetDriveType. Allow RAM
6815 disk as well as local fixed disk when w32-get-true-file-attributes
6816 is set to `local'.
6817 (CopySid_Proc, EqualSid_Proc, GetLengthSid_Proc): New typedefs.
6818 (equal_sid, get_length_sid, copy_sid): New wrapper functions.
6819 (w32_cached_id, w32_add_to_cache): New functions.
6820 (get_name_and_id): Look account names in the cache before calling
6821 lookup_account_sid.
6822 (g_b_init_get_length_sid, g_b_init_equal_sid, g_b_init_copy_sid):
6823 New initialization flags.
6824 (globals_of_w32): Initialize them to zero.
6825 (w32_system_process_attributes): Use w32_cached_id and
6826 w32_add_to_cache.
6827
68282008-08-14 Lawrence Mitchell <wence@gmx.li>
6829
6830 * lread.c (Fread_char, Fread_char_exclusive): If no character
6831 event is read before timeout is reached, return nil, rather than
6832 converting to a number.
6833
68342008-08-14 Chong Yidong <cyd@stupidchicken.com>
6835
6836 * fns.c (use_dialog_box): Doc fix.
6837
6838 * s/darwin.h: Undefine HAVE_RES_INIT, which appears to be harmful
6839 on OS X.
6840
68412008-08-13 Chong Yidong <cyd@stupidchicken.com>
6842
6843 * frame.c (Qns_parse_geometry): New var.
6844 (Fx_parse_geometry): For HAVE_NS, call ns-parse-geometry.
6845
68462008-08-11 Chong Yidong <cyd@stupidchicken.com>
6847
6848 * xdisp.c (x_produce_glyphs): Handle the case when font has no
6849 space character in calculating tabs.
6850
68512008-08-11 Dan Nicolaescu <dann@ics.uci.edu>
6852
6853 * Makefile.in (bootstrap-emacs): Use ln -f in the CANNOT_DUMP case.
6854
68552008-08-10 Glenn Morris <rgm@gnu.org>
6856
6857 * process.c (procfs_system_process_attributes): Use EMACS_INTs to
6858 silence gcc "limited range of data type" warnings in some
6859 make_fixnum_or_float calls.
6860
68612008-08-09 Eli Zaretskii <eliz@gnu.org>
6862
6863 * w32.c (w32_system_process_attributes): If the process does not
6864 exist, return nil.
6865
6866 * w32.c: Include thelp32.h, psapi.h and coding.h.
6867 (_MEMORYSTATUSEX, _PROCESS_MEMORY_COUNTERS_EX): New struct
6868 declarations.
6869 (CreateToolhelp32Snapshot_Proc, Process32First_Proc)
6870 (Process32Next_Proc): New typedefs.
6871 (g_b_init_create_toolhelp32_snapshot, g_b_init_process32_first)
6872 (g_b_init_process32_next, g_b_init_open_thread_token)
6873 (g_b_init_impersonate_self, g_b_init_revert_to_self)
6874 (g_b_init_get_process_memory_info, g_b_init_global_memory_status)
6875 (g_b_init_get_process_working_set_size)
6876 (g_b_init_global_memory_status_ex): New static variables.
6877 (globals_of_w32): Initialize them.
6878 (create_toolhelp32_snapshot, process32_first, process32_next)
6879 (open_thread_token, impersonate_self, revert_to_self)
6880 (get_process_memory_info, get_process_working_set_size)
6881 (global_memory_status, global_memory_status_ex): New wrapper
6882 functions.
6883 (w32_list_system_processes, w32_system_process_attributes)
6884 (enable_privilege, restore_privilege, ltime, process_times):
6885 New functions.
6886 (convert_time_raw): New function.
6887 (convert_time): Remove conversion of FILETIME into time in 100
6888 nsec units, call convert_time_raw instead.
6889
6890 * process.h (w32_list_system_processes, w32_system_process_attributes):
6891 Add prototypes.
6892 (Qeuid, Qegid, Qcomm, Qstate, Qppid, Qpgrp, Qsess, Qttname)
6893 (Qminflt, Qmajflt, Qcminflt, Qcmajflt, Qutime, Qstime, Qcutime)
6894 (Qpri, Qnice, Qthcount, Qstart, Qvsize, Qrss, Qargs, Quser, Qgroup)
6895 (Qetime, Qpcpu, Qpmem, Qtpgid, Qcstime): Add extern declarations.
6896
6897 * process.c (Fsystem_process_attributes): Doc fix.
6898
68992008-08-08 Chong Yidong <cyd@stupidchicken.com>
6900
6901 * xdisp.c (move_it_to): When stopping at a charpos, check if that's
6902 a continued multi-char glyph; if so, advance to the actual glyph.
6903
69042008-08-07 Dan Nicolaescu <dann@ics.uci.edu>
6905
6906 * s/darwin.h (OTHER_FILES): Do not define here, defined in config.in.
6907
6908 * Makefile.in (ALL_OBJC_CFLAGS): New variable.
6909 (.m.o): Use it.
6910 * config.in: Regenerate.
6911
69122008-08-07 Chong Yidong <cyd@stupidchicken.com>
6913
6914 * xdisp.c (redisplay_window): Revert last change.
6915 (try_window): Check bottom scroll margin too.
6916
69172008-08-06 Adrian Robert <Adrian.B.Robert@gmail.com>
6918
6919 * config.in: Regenerate.
6920
6921 * Makefile.in (emacs): Remove ifndef NS conditional for 'emacs
6922 -list-load-path-shadows'.
6923 (nsgui.h): Reduce number of things depending on it.
6924
69252008-08-06 Chong Yidong <cyd@stupidchicken.com>
6926
6927 * xdisp.c (try_scrolling): Use iterator to find the scroll margin,
6928 instead of window-end which does the wrong thing at eob.
6929 (try_cursor_movement): Minor optimization.
6930 (redisplay_window): If scroll margin is defined, don't assume
6931 window doesn't need scrolling.
6932
69332008-08-06 Adrian Robert <Adrian.B.Robert@gmail.com>
6934
6935 * config.in: Regenerate.
6936
6937 * Makefile.in: Move nsXXX.m dependencies into big alphabetical list.
6938 (mostlyclean): Don't delete *.d under NS.
6939
6940 * nsterm.h (NS_HAVE_INTEGER): Change to NS_HAVE_NSINTEGER.
6941
69422008-08-06 Kenichi Handa <handa@m17n.org>
6943
6944 * xfont.c (xfont_list_family): Return a list of symbols, not strings.
6945
69462008-08-06 Andreas Schwab <schwab@suse.de>
6947
6948 * config.in: Regenerate.
6949
69502008-08-05 Chong Yidong <cyd@stupidchicken.com>
6951
6952 * xdisp.c (redisplay_window): Don't enforce scroll-margin when
6953 forcing a window start.
6954
6955 * fileio.c (Vauto_save_list_file_name): Move here from file.el.
6956 (auto_save_1): Update modtime when auto-save-list-file-name is on.
6957
69582008-08-04 Adrian Robert <Adrian.B.Robert@gmail.com>
6959
6960 * emacs.c (main): Under NS, set working dir to HOME when get a "psn"
6961 argument.
6962
69632008-08-05 Juanma Barranquero <lekktu@gmail.com>
6964
6965 * buffer.c (syms_of_buffer) <scroll-up-aggressively>:
6966 <scroll-down-aggressively, before-change-functions>:
6967 <after-change-functions>: Reflow docstrings.
6968
69692008-08-04 Adrian Robert <Adrian.B.Robert@gmail.com>
6970 Ken Raeburn <raeburn@gnu.org>
6971
6972 Dock menu customization, based on a patch by Ken Raeburn, plus some
6973 other fixes.
6974 * nsmenu.m (dockMenu): New variable.
6975 (EmacsDialog -clicked:): Fix mistake in change of 2008-07-17.
6976
6977 * nsterm.h (dockMenu): Declare.
6978
6979 * nsterm.m (KEY_NS_NEW_FRAME): New definition.
6980 (ns_term_init): Initialize dockMenu.
6981 (EmacsApp -newFrame:, -applicationDockMenu:): New methods.
6982 (EmacsView -windowShouldClose:): Don't behave specially if <= 1 frame
6983 left.
6984
6985 * lisp.h (LSB_TAG): Use on DARWIN_OS, not NS_IMPL_COCOA.
6986
69872008-08-04 Chong Yidong <cyd@stupidchicken.com>
6988
6989 * nsterm.h: Test directly for NS_HAVE_INTEGER before defining it.
6990
6991 * config.in: Regenerate.
6992
69932008-08-04 Seiji Zenitani <zenitani@mac.com>
6994
6995 * nsfns.m (x-create-frame): Set the frame parameter alpha to nil.
6996
69972008-08-04 Chong Yidong <cyd@stupidchicken.com>
6998
6999 * nsterm.h (find_and_call_menu_selection): Fix prototype.
7000
70012008-08-04 Adrian Robert <Adrian.B.Robert@gmail.com>
7002
7003 * emacs.c (main: unexec_init_emacs_zone): Call if on DARWIN_OS.
7004
7005 * keyboard.h: Comment an #endif.
7006
7007 * lisp.h (have_menus_p): Adjust comment.
7008
7009 * menu.c (find_and_return_menu_selection): Fix comparison with
7010 client_data.
7011
7012 * nsmenu.m (popup_activated_flag): New variable.
7013 (popup_activated): New function.
7014 (menu-or-popup-active-p): New exported lisp definition.
7015 (ns_popup_menu): Set popup_activated_flag. Call discard_menu_items()
7016 when popup done.
7017 (ns_popup_dialog): Set popup_activated_flag.
7018
7019 * nsterm.m (EmacsView -conversationIdentifier): Use NSInteger
7020 version for GNUstep (handled by conditional typedef in nsterm.m).
7021 (ns_get_color): Remove special-casing for "darkblue", "dark blue" (now
7022 in rgb.txt).
7023
7024 * process.c (init_process): Use DARWIN_OS, not DARWIN.
7025
7026 * sysselect.h: Conditionalize init_process undef on DARWIN_OS.
7027
7028 * syssignal.h (FORWARD_SIGNAL_TO_MAIN_THREAD): Do it also under NS.
7029
7030 * xdisp.c (redisplay_internal, note_mouse_highlight): Under NS,
7031 shortcircuit if popup_activated like GTK and X toolkit.
7032
7033 * m/inter386.h: Change DARWIN to DARWIN_OS.
7034
7035 * s/darwin.h: Add #define DARWIN_OS. Get rid of C_SWITCH_SYSTEM def.
7036 Change LIBS_MACGUI to LIBS_NSGUI. Move temacs-conditionalized defs
7037 closer to C_SWITCH_SYSTEM_TEMACS so usage is understood. Expand
7038 comment on NO_SOCK_SIGIO.
7039
70402008-08-03 Chong Yidong <cyd@stupidchicken.com>
7041
7042 * nsterm.m (windowDidResize): Remove stopModal call.
7043
70442008-08-03 Andreas Schwab <schwab@suse.de>
7045
7046 * vm-limit.c (get_lim_data) [HAVE_GETRLIMIT && RLIMIT_AS]: Define.
7047 (check_memory_limits): Don't handle HAVE_GETRLIMIT here.
7048
70492008-08-02 Chong Yidong <cyd@stupidchicken.com>
7050
7051 * vm-limit.c (check_memory_limits): Don't use getrlimit on cygwin.
7052 Don't use uninitialized pointer variable when using getrlimit.
7053
70542008-08-02 Jason Rumney <jasonr@gnu.org>
7055
7056 * w32font.c (compute_metrics): Don't mess with glyph_idx setting here.
7057
70582008-08-02 Eli Zaretskii <eliz@gnu.org>
7059
7060 * alloc.c (NSTATICS): Bump to 0x640.
7061
7062 * s/gnu-linux.h (HAVE_PROCFS, LISTPROC, PROCATTR): New defines.
7063
7064 * lisp.h: Add prototype for directory_files_internal.
7065
7066 * process.c (Fsystem_processes_list, Fsystem_process_attributes):
7067 New functions.
7068 (syms_of_process): Defsubr them. Add initializations for various
7069 Q* symbols used in procfs_system_process_attributes.
7070 (procfs_list_system_processes, procfs_system_process_attributes)
7071 [HAVE_PROCFS]: New functions.
7072 (time_from_jiffies, ltime_from_jiffies, get_up_time, procfs_ttyname)
7073 (procfs_get_total_memory): New functions.
7074
70752008-08-01 Juanma Barranquero <lekktu@gmail.com>
7076
7077 * xfaces.c (Fx_load_color_file): Fix previous change;
7078 it is #ifdef WINDOWSNT, not WINDOWS_NT.
7079
70802008-08-01 Michael Albinus <michael.albinus@gmx.de>
7081
7082 * dbusbind.c (xd_read_message): Handle D-Bus error messages.
7083
70842008-08-01 Adrian Robert <Adrian.B.Robert@gmail.com>
7085
7086 * nsterm.h (NSInteger, NSUInteger): Add defines for non-Leopard.
7087
70882008-08-01 Chong Yidong <cyd@stupidchicken.com>
7089
7090 * nsfns.m (ns_frame_parm_handlers): Add empty entry for x_set_alpha.
7091
7092 * nsterm.m (EmacsApp -application:openFiles:): GNUstep does not
7093 define NSApplicationDelegateReplySuccess.
7094 (EmacsView -converstationIdentifier): Use long instead of
7095 NSInteger for GNUstep, since it doesn't have NSInteger.
7096
7097 * xmenu.c: Revert last change.
7098
7099 * keyboard.h: Fix last change.
7100
71012008-08-01 Juanma Barranquero <lekktu@gmail.com>
7102
7103 * xfaces.c (x-load-color-file): Use RGB() instead of manually shifting
7104 on Windows.
7105
71062008-08-01 Adrian Robert <Adrian.B.Robert@gmail.com>
7107
7108 Warning clearing and clean-up in NS port.
7109 * keyboard.h (xmalloc_widget_value, digest_single_submenu):
7110 Add prototypes.
7111 * nsgui.h (FACE_DEFAULT): Remove, unused.
7112 (XGCValues): Change colors to unsigned long.
7113 * nsterm.h (EmacsApp): Add declaration of all methods implemented in
7114 nsterm.m.
7115 (EmacsMenu -addItemWithWidgetValue:): Change to use NSMenuItem class.
7116 (ns_list_fonts): Remove, unused.
7117 (ns_font_to_xlfd, ns_fontname_to_xlfd): Drop prototypes.
7118 * nsfns.m (interpret_services_menu): Use NSMenuItem class.
7119 * nsfont.m (nsfont_open): Fix cast error in glyphs,metrics alloc.
7120 (nsfont_draw): Compare face colors to 0, not nil.
7121 * nsmenu.m (struct widget_value): Drop unneeded declaration.
7122 (EmacsMenu -addItemWithWidgetValue:, -fillWithWidgetValue:)
7123 (-addSubmenuWithTitle:): Use NSMenuItem class.
7124 (ns_popup_menu): Use NO, not NULL, for enabled setting.
7125 * nsterm.m (ns_draw_glyph_string): Don't compare font to ~0.
7126 (ns_clip_to_row): Make gc arg a BOOL.
7127 (ns_draw_fringe_bitmap, ns_draw_window_cursor): Use YES, NO in
7128 ns_clip_to_row() call.
7129 (ns_draw_glyph_string): Drop face comparison to ~0 (no longer
7130 used). Cast FRAME_FONT assignments.
7131 (ns_read_socket): Cast call to EmacsApp-fulfillService:withArg:.
7132 (ns_string_to_lispmod): Change arg to const char.
7133 (ns_term_init): Use NSMenuItem class.
7134 (EmacsApp -openFile:): Move to different section of file.
7135 (EmacsApp -application:openFiles:): Don't return a value, call
7136 -replyToOpenOrPrint:.
7137 (EmacsView -keyDown:): Fix up cast.
7138 (EmacsView -converstationIdentifier): Use NSInteger instead of long.
7139 (EmacsView -menuDown:): Cast tag in call to
7140 find_and_call_menu_selection().
7141 (ns_list_fonts): Remove, unused.
7142 (ns_font_to_xlfd): Make static. Cast result of UTF8String.
7143 (ns_fontname_to_xlfd): Make static.
7144 * w32menu.c (xmalloc_widget_value, digest_single_submenu):
7145 Remove prototypes (now in keyboard.h).
7146 (next_menubar_widget_id): Remove, unused.
7147 * xmenu.c (xmalloc_widget_value, digest_single_submenu):
7148 Remove prototypes (now in keyboard.h).
7149 * xfaces.c (ns_list_fonts, w32_list_fonts): Remove, unused.
7150
71512008-08-01 Dan Nicolaescu <dann@ics.uci.edu>
7152
7153 * Makefile.in (dispnew.o, gtkutil.o, sound.o, atimer.o)
7154 (floatfns.o): Depend on syssignal.h.
7155 (term.o): Depend on syssignal.h, systty.h, and $(INTERVAL_SRC).
7156
7157 * systty.h: Fix previous change that removed BSD_TERMIOS.
7158 Add comments to #ifdefs.
7159
71602008-08-01 Adrian Robert <Adrian.B.Robert@gmail.com>
7161
7162 * w32fns.c (w32-load-color-file): Remove.
7163 (x-open-connection): Use renamed Fx_load_color_file.
7164 * xfaces.c (x-load-color-file): Add.
7165 * nsterm.m (ns_initialize): Load colors from etc/rgb.txt instead of
7166 Emacs.clr.
7167 (hide_hourglass): BLOCK_INPUT before UNBLOCK.
7168
71692008-07-31 Michael Albinus <michael.albinus@gmx.de>
7170
7171 * dbusbind.c (Fdbus_call_method_asynchronously)
7172 (Fdbus_method_error_internal): New defuns.
7173 (xd_read_message): Handle also reply messages.
7174 (Vdbus_registered_functions_table): Extend docstring.
7175
71762008-07-31 Juanma Barranquero <lekktu@gmail.com>
7177
7178 * keyboard.c (gobble_input): Fix previous change.
7179
71802008-07-31 Dan Nicolaescu <dann@ics.uci.edu>
7181
7182 * bitmaps/README:
7183 * xfns.c:
7184 * termcap.c:
7185 * term.c:
7186 * syswait.h:
7187 * systty.h:
7188 * systime.h:
7189 * syssignal.h:
7190 * sysdep.c:
7191 * process.h:
7192 * process.c:
7193 * print.c:
7194 * ndir.h:
7195 * lread.c:
7196 * keyboard.c:
7197 * getpagesize.h:
7198 * floatfns.c:
7199 * fileio.c:
7200 * emacs.c:
7201 * doc.c:
7202 * dispnew.c:
7203 * dired.c:
7204 * data.c:
7205 * callproc.c:
7206 * buffer.c:
7207 * README:
7208 * Makefile.in:
7209 * s/template.h:
7210 * s/msdos.h:
7211 * m/vax.h: Remove VMS support.
7212 * s/vms.h:
7213 * vlimit.h:
7214 * uaf.h:
7215 * temacs.opt:
7216 * param.h:
7217 * ioctl.h: Remove file.
7218
72192008-07-31 Dan Nicolaescu <dann@ics.uci.edu>
7220
7221 * s/ms-w32.h (MULTI_KBOARD): Remove.
7222 * xterm.c:
7223 * xselect.c:
7224 * xfns.c:
7225 * window.c:
7226 * w32term.c:
7227 * w32fns.c:
7228 * terminal.c:
7229 * termhooks.h:
7230 * term.c:
7231 * sysdep.c:
7232 * keyboard.h:
7233 * keyboard.c:
7234 * frame.h:
7235 * frame.c:
7236 * frame.c: Remove references to MULTI_KBOARD, it is now the default.
7237 * config.in: Regenerate.
7238
72392008-07-30 Jason Rumney <jasonr@gnu.org>
7240
7241 * w32font.h (struct w32font_info): Use unicode version of textmetrics.
7242
7243 * w32font.c (w32font_encode_char): Leave as unicode if in range.
7244 (w32font_open_internal): Get unicode version of textmetrics.
7245 Don't enable or disable glyph indices here.
7246 (w32font_open): Disable use of glyph indices.
7247
7248 * w32uniscribe.c (uniscribe_open): Enable use of glyph indices.
7249
72502008-07-30 Chong Yidong <cyd@stupidchicken.com>
7251
7252 * minibuf.c (Vread_buffer_function): Doc fix.
7253
72542008-07-30 John Paul Wallington <jpw@pobox.com>
7255
7256 * minibuf.c (read_buffer_completion_ignore_case): New var.
7257 (Fread_buffer): Use it.
7258
72592008-07-30 Dan Nicolaescu <dann@ics.uci.edu>
7260
7261 * systty.h (sensemode): Remove empty #if. Remove reference to
7262 BSD_TERMIOS, unused.
7263
7264 * sysdep.c: Remove reference to DGUX.
7265 (closedir): Remove reference to BROKEN_CLOSEDIR, unused.
7266
7267 * config.in: Regenerate.
7268
72692008-07-30 Jason Rumney <jasonr@gnu.org>
7270
7271 * w32uniscribe.c (uniscribe_encode_char): Fix glyph buffer size.
7272
72732008-07-29 Jason Rumney <jasonr@gnu.org>
7274
7275 * w32uniscribe.c (uniscribe_shape): Avoid using context if cache
7276 is populated.
7277 (uniscribe_encode_char): Always use uniscribe.
7278 Avoid using context if cache is populated.
7279
72802008-07-29 Jan Djärv <jan.h.d@swipnet.se>
7281
7282 * xmenu.c (Fx_menu_bar_open_internal): Use activate_item signal to
7283 open menu.
7284
7285 * gtkutil.c (menu_nav_ended): Remove.
7286 (create_menus): Remove signal connect for menu_nav_ended.
7287
72882008-07-28 Chong Yidong <cyd@stupidchicken.com>
7289
7290 * xdisp.c (redisplay_window): Check return value of
7291 compute_window_start_on_continuation_line before forcing a window
7292 start.
7293
72942008-07-28 Jason Rumney <jasonr@gnu.org>
7295
7296 * w32font.c (w32font_text_extents): Use w32_metric_cache consistently.
7297
7298 * w32term.c (w32_enable_unicode_output, cleartype_active):
7299 Remove obsolete display options.
7300 (x_draw_glyph_string_background): Don't use old cleartype_active
7301 workaround.
7302 (w32_initialize): Remove cleartype_active initialization.
7303 (syms_of_w32term): Remove w32_enable_unicode_output initialization.
7304
73052008-07-28 Andreas Schwab <schwab@suse.de>
7306
7307 * lisp.h (init_weak_hash_tables, syms_of_font)
7308 (xd_read_queued_messages, syms_of_dbusbind): Declare.
7309 (remove_hash_entry): Don't declare.
7310 * eval.c (maybe_call_debugger): Make static and move before use.
7311 * gtkutil.c: Include <X11/Xft/Xft.h> if HAVE_XFT.
7312 * xdisp.c: Include "gtkutil.h" if USE_GTK.
7313 * xterm.h (x_set_frame_alpha): Declare.
7314
73152008-07-28 Jan Djärv <jan.h.d@swipnet.se>
7316
7317 * gtkutil.c (menu_nav_ended): Revert change from 2008-07-24.
7318 (create_menus): Connect selection-done to menu_nav_ended.
7319
73202008-07-27 Adrian Robert <Adrian.B.Robert@gmail.com>
7321
7322 * nsfns.m (x-create-frame): Add copy of parms argument to beginning.
7323 Set Vx_resource_name to a fallback. Replace read of 'buffered'
7324 parameter with read of 'alpha' one.
7325 (Qns_frame_parameter): Remove.
5582fbc7 7326 * nsselect.m (selection-coding-system)
aac0c6e3
MR
7327 (next-selection-coding-system, Vselection_coding_system)
7328 (Vnext_selection_coding_system): Drop.
7329
73302008-07-27 Adrian Robert <Adrian.B.Robert@gmail.com>
7331
7332 * nsfns.m (do-applescript, do_applescript): Rename to
7333 ns-do-applescript, ns_do_applescript, and move within file.
7334
73352008-07-27 Dan Nicolaescu <dann@ics.uci.edu>
7336
7337 Remove support for Mac Carbon.
7338 * mactoolbox.c:
7339 * macterm.h:
7340 * macterm.c:
7341 * macselect.c:
7342 * macmenu.c:
7343 * macgui.h:
7344 * macfns.c:
7345 * mac.c: Remove file.
7346 * s/darwin.h:
7347 * m/intel386.h:
7348 * xfaces.c:
7349 * xdisp.c:
7350 * window.c:
7351 * tparam.c:
7352 * termhooks.h:
7353 * termcap.c:
7354 * term.c:
7355 * syssignal.h:
7356 * sysselect.h:
7357 * sysdep.c:
7358 * process.c:
7359 * lread.c:
7360 * lisp.h:
7361 * keyboard.c:
7362 * image.c:
7363 * fringe.c:
7364 * frame.h:
7365 * frame.c:
7366 * fontset.c:
7367 * font.h:
7368 * font.c:
7369 * fns.c:
7370 * fileio.c:
7371 * emacs.c:
7372 * dispnew.c:
7373 * dispextern.h:
7374 * config.in:
7375 * atimer.c:
2ae37cf0 7376 * Makefile.in: Remove code for Carbon.
aac0c6e3 7377
f0131492 73782008-07-26 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
aac0c6e3
MR
7379
7380 * macterm.c (XDrawLine) [USE_MAC_IMAGE_IO]: Remove spurious return.
7381
73822008-07-26 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
7383
7384 * macterm.h (kCGBitmapByteOrder32Host): New define for
7385 non-universal SDKs.
7386
7387 * image.c (mac_create_cg_image_from_image, image_load_image_io)
7388 [USE_MAC_IMAGE_IO]: Remove conditionals for kCGBitmapByteOrder32Host.
7389
7390 * macterm.c (XDrawLine, XCreatePixmapFromBitmapData)
7391 [USE_MAC_IMAGE_IO]: Remove conditionals for kCGBitmapByteOrder32Host.
7392
73932008-07-26 David Robinow <drobinow@gmail.com> (tiny change)
7394
7395 * w32inevt.c: Include dispextern.h.
7396
73972008-07-26 Andreas Schwab <schwab@suse.de>
7398
7399 * print.c (print_object): Fix off-by-one in last change.
7400
74012008-07-25 Juanma Barranquero <lekktu@gmail.com>
7402
7403 * term.c (syms_of_term): Don't initialize default_orig_pair,
7404 default_set_foreground and default_set_background on Windows.
7405
74062008-07-25 Jason Rumney <jasonr@gnu.org>
7407
7408 * w32uniscribe.c (uniscribe_shape): Pass NULL for control arg to
7409 ScriptItemize. Clean up return value checking. Remove unused
7410 variables.
7411 (uniscribe_encode_char): Encode non-BMP characters with uniscribe
7412 shaping engine.
7413
7414 * w32font.c (w32font_has_char): Handle the case where we can't
7415 determine the script for a character.
7416
74172008-07-25 Chong Yidong <cyd@stupidchicken.com>
7418
7419 * term.c (syms_of_term): Initialize default_orig_pair,
7420 default_set_foreground, and default_set_background.
7421
7422 * getloadavg.c (nl): Rename to name_list to avoid ncurses.h
7423 clash (bug#86).
7424 (getloadavg): Callers changed.
7425
7426 * image.c (svg_load_image): Fix last change.
7427 (svg_load_image): Use rsvg_handle_get_dimensions to check that
7428 image size is valid. Use g_object_unref instead of deprecated
7429 rsvg_handle_free to free rsvg handle.
7430 (x_from_xcolors): Don't initialize pixmap (silence compiler).
7431
74322008-07-25 Jason Rumney <jasonr@gnu.org>
7433
7434 * w32font.c (w32font_encode_char): Encode characters outside BMP as
7435 surrogates before looking up glyph index.
7436 (w32font_text_extents): Encode as surrogates if falling back to
7437 functions that need UTF-16 wide chars.
7438
7439 * w32uniscribe.c (uniscribe_encode_char): Encode characters outside
7440 BMP as surrogates before looking up glyph index.
7441
74422008-07-25 Chong Yidong <cyd@stupidchicken.com>
7443
7444 * image.c (svg_load_image): Check for failure in return value of
7445 rsvg_handle_get_pixbuf. Free rsvg handle when done.
7446
74472008-07-25 Jason Rumney <jasonr@gnu.org>
7448
7449 * w32font.c (Fx_select_font): Reverse sense of second arg.
7450
74512008-07-24 Stefan Monnier <monnier@iro.umontreal.ca>
7452
7453 * syntax.c (struct lisp_parse_state, char_quoted, inc_bytepos)
7454 (dec_bytepos, find_defun_start): Use EMACS_INT for buffer positions.
7455
7456 * puresize.h (PURESIZE_CHECKING_RATIO): New macro.
7457 (PURESIZE): Use it.
7458
74592008-07-24 Dan Nicolaescu <dann@ics.uci.edu>
7460
7461 * m/amdx86-64.h (HAVE_LIB64_DIR): Consolidate ifdefs.
7462 * m/alpha.h (TEXT_END):
7463 * m/ibmrs6000.h (TEXT_END):
7464 * m/macppc.h (TEXT_END):
7465 * s/darwin.h (TEXT_END):
7466 * s/msdos.h (TEXT_END): Remove, unused.
7467 * s/gnu-linux.h (BSD_PGRPS): Add a comment.
7468 * s/cygwin.h: Remove comment.
7469
7470 * ecrt0.c (NODOT_GLOBAL_START): Remove code, unused.
7471 (DOT_GLOBAL_START): Remove conditional, redundant for CRT0_DUMMIES.
7472 * m/intel386.h (DOT_GLOBAL_START):
7473 * m/vax.h (DOT_GLOBAL_START): Remove, redundant with CRT0_DUMMIES.
7474 (USG): Remove, file not used on USG platforms.
7475
7476 * Makefile.in (HAVE_X11): Remove empty #else.
7477
74782008-07-24 Andreas Schwab <schwab@suse.de>
7479
7480 * fileio.c (Finsert_file_contents): Properly adjust undo list
7481 after format conversion.
7482
74832008-07-24 Jan Djärv <jan.h.d@swipnet.se>
7484
7485 * gtkutil.c (xg_get_font_name): Cast w to GTK_FONT_SELECTION_DIALOG.
7486 (menu_nav_ended): Remove.
7487 (create_menus): Remove signal connect for menu_nav_ended.
7488 (xg_update_menubar): Also take deactivate_cb as parameter, pass it to
7489 create_menus.
7490 (xg_modify_menubar_widgets): Pass deactivate_cb to xg_update_menubar.
7491
74922008-07-23 Jason Rumney <jasonr@gnu.org>
7493
7494 * w32font.c (w32_enumfont_pattern_entity): Return height consistent
7495 with opened font.
7496 (w32font_open): Set font type to gdi.
7497
7498 * w32uniscribe.c (uniscribe_open): Set font type to uniscribe.
7499
75002008-07-23 Dan Nicolaescu <dann@ics.uci.edu>
7501
7502 * s/usg5-4.h (ADDR_CORRECT): Remove, unused.
7503 * unexaix.c (ADDR_CORRECT): Remove conditional, the only user
7504 defines it.
7505 * unexec.c (ADDR_CORRECT): Define unconditionally.
7506
7507 * m/ibmrs6000.h (C_SWITCH_MACHINE): Remove.
7508
7509 * unexec.c: Remove code depending on !COFF and USG, the file is
7510 not used for such systems.
7511
7512 * s/netbsd.h (A_TEXT_OFFSET, A_TEXT_SEEK):
7513 * s/freebsd.h (A_TEXT_OFFSET, A_TEXT_SEEK): Remove, unused.
7514 (LD_SWITCH_SYSTEM_1): Remove, update users.
7515
7516 * s/darwin.h (DATA_END):
7517 * m/intel386.h (DATA_END):
7518 * m/ibmrs6000.h (DATA_END):
7519 * m/alpha.h (DATA_END): Remove, unused.
7520
7521 * config.in: Regenerate.
7522 * s/ms-w32.h (subprocesses): Define unconditionally.
7523 * s/template.h (subprocesses): Update comment.
7524 * s/vms.h (subprocesses):
7525 * s/usg5-4.h (subprocesses):
7526 * s/hpux10-20.h (subprocesses):
7527 * s/gnu-linux.h (subprocesses):
7528 * s/cygwin.h (subprocesses):
7529 * s/bsd-common.h (subprocesses):
7530 * s/aix4-2.h (subprocesses):
7531 * s/darwin.h (subprocesses): Do not define, defined by default now.
7532
7533 * Makefile.in (C_SWITCH_SITE, LD_SWITCH_SITE): Remove, unused.
7534 Remove all references.
7535 (temacs): Add GNUstep specific ld flags.
7536
7537 * nsterm.m (syms_of_nsterm): Provide ns, not ns-windowing,
7538 similarly to what X does.
7539
75402008-07-22 Adrian Robert <Adrian.B.Robert@gmail.com>
7541
7542 * nsfns.m (x-list-fonts): Remove.
7543 (syms_of_nsfns): Drop the x-list-fonts declaration.
7544 * nsterm.m: Get rid of remaining "//" comments.
7545
75462008-07-22 Chong Yidong <cyd@stupidchicken.com>
7547
7548 * xselect.c (Fx_rotate_cut_buffers_internal): Doc fix.
7549
7550 * nsselect.m (Fns_selection_exists_p, Fns_selection_owner_p)
7551 (Fx_get_selection_internal, Fns_rotate_cut_buffers_internal)
7552 (Fns_own_selection_internal, Fx_disown_selection_internal)
7553 (Fns_get_cut_buffer_internal, Fns_store_cut_buffer_internal):
7554
7555 * nsmenu.m (Fns_reset_menu, Fx_popup_menu): Change to use 'doc: /*
7556 ... */' style of docstrings. Doc fixes.
7557
75582008-07-22 Dan Nicolaescu <dann@ics.uci.edu>
7559
7560 * terminfo.c (UP, BC, PC): Undo previous change.
7561
7562 * nsfns.m: Rename ns prefixed functions/variables to the
7563 corresponding x versions. Update references.
7564
75652008-07-22 Stefan Monnier <monnier@iro.umontreal.ca>
7566
7567 * syntax.c (char_quoted): Check "charpos > beg" before decrementing.
7568
75692008-07-22 Dan Nicolaescu <dann@ics.uci.edu>
7570
7571 * nsfns.m (x_set_menu_bar_lines, x_set_tool_bar_lines):
7572 Remove forwarding functions.
7573 (ns_set_menu_bar_lines): Rename to x_set_menu_bar_lines, make
7574 non-static.
7575 (ns_set_tool_bar_lines): Rename to x_set_tool_bar_lines, make
7576 non-static.
7577 (ns_frame_parm_handlers): Use the new names.
7578 (syms_of_nsfns): Move to the end of file.
7579
7580 * nsterm.m (syms_of_nsterm): Move to the end of file.
7581
7582 * dispnew.c (init_display): Remove code for X10.
7583
75842008-07-22 Jason Rumney <jasonr@gnu.org>
7585
7586 * w32proc.c (Fw32_long_file_name): Don't append dir separator to
7587 bare drive.
7588
75892008-07-22 Adrian Robert <Adrian.B.Robert@gmail.com>
7590
7591 * nsterm.m (syms_of_nsterm): Remove debugging println.
7592
75932008-07-22 David Reitter <david.reitter@gmail.com>
7594
7595 * nsfns.m (do_applescript, F_do_applescript): NS version of the
7596 Carbon implementation of the same functionality: execute arbitrary
7597 AppleScript code.
7598
75992008-07-21 Adrian Robert <Adrian.B.Robert@gmail.com>
7600
7601 * nsfns.m (Fx_create_frame, Fx_read_file_name, Fx_get_resource)
7602 (Fx_set_resource, Fx_set_alpha, Fx_server_max_request_size)
7603 (Fx_server_vendor, Fx_server_version, Fx_display_screens)
7604 (Fx_display_mm_height, Fx_display_mm_width)
7605 (Fx_display_backing_store, Fx_display_visual_class)
7606 (Fx_display_save_under, Fx_open_connection)
7607 (Fx_close_connection, Fx_hide_emacs, Fx_font_name)
7608 (Fx_list_colors, Fx_perform_service, Fx_color_defined_p)
7609 (Fx_color_values, Fxw_display_color_p, Fx_display_grayscale_p)
7610 (Fx_display_pixel_width, Fx_display_pixel_height)
7611 (Fx_display_usable_bounds, Fx_display_planes)
7612 (Fx_display_color_cells, Vns_icon_type_alist): Change to use 'doc: /*
7613 ... */' style of docstrings.
7614
76152008-07-21 Dan Nicolaescu <dann@ics.uci.edu>
7616
7617 * m/mips.h (LOAD_AVE_TYPE, LOAD_AVE_CVT): Do not define, not used
7618 on this platform.
7619 (mips):
7620 * m/iris4d.h (mips): Do not define.
7621 * sysdep.c (init_sys_modes): Use __mips__ instead of mips.
7622
7623 * m/ibmrs6000.h (LD_SWITCH_SITE): Remove.
7624
7625 * image.c:
7626 * nsfns.m:
7627 * nsselect.m:
7628 * nsterm.h:
7629 * nsterm.m: Rename ns prefixed functions/variables to the
7630 corresponding x versions. Update references.
7631
7632 * m/ibms390x.h (NO_REMAP): Do not undefine.
7633
7634 * m/amdx86-64.h: Use SOLARIS2 instead of sun.
7635
76362008-07-21 Chong Yidong <cyd@stupidchicken.com>
7637
7638 * nsfns.m: Change NS to Nextstep in docstrings and error messages.
7639 (Fns_create_frame, Fns_read_file_name, Fns_get_resource)
7640 (Fns_set_resource, Fns_set_alpha, Fns_server_max_request_size)
7641 (Fns_server_vendor, Fns_server_version, Fns_display_screens)
7642 (Fns_display_mm_height, Fns_display_mm_width)
7643 (Fns_display_backing_store, Fns_display_visual_class)
7644 (Fns_display_save_under, Fns_open_connection)
7645 (Fns_close_connection, Fns_hide_emacs, Fns_font_name)
7646 (Fns_list_colors, Fns_perform_service, Fns_color_defined_p)
7647 (Fns_color_values, Fxw_display_color_p, Fx_display_grayscale_p)
7648 (Fns_display_pixel_width, Fns_display_pixel_height)
7649 (Fns_display_usable_bounds, Fx_display_planes)
7650 (Fns_display_color_cells, Vns_icon_type_alist): Doc fixes.
7651
76522008-07-21 Ami Fischman <ami@fischman.org> (tiny change)
7653
7654 * print.c (print_object): Check print_depth before searching for
7655 circularities.
7656
76572008-07-21 Michael Albinus <michael.albinus@gmx.de>
7658
7659 * dbusbind.c (Fdbus_register_signal): Use sprintf + strcat instead
7660 only sprintf.
7661
76622008-07-21 Kenichi Handa <handa@m17n.org>
7663
7664 * ftfont.c (adjust_anchor): Check if DeltaValue is not NULL.
7665
76662008-07-20 Andreas Schwab <schwab@suse.de>
7667
7668 * syntax.c (find_start_pos, find_start_value)
7669 (find_start_value_byte, find_start_begv, find_defun_start)
7670 (back_comment, scan_sexps_forward): Use EMACS_INT for buffer positions.
7671
76722008-07-20 Dan Nicolaescu <dann@ics.uci.edu>
7673
7674 * s/sol2-3.h: Insert contents of s/sol2.h.
7675 (LD_SWITCH_SYSTEM): Remove redundant definition.
7676 * s/sol2.h: Remove, unused.
7677
76782008-07-20 Adrian Robert <Adrian.B.Robert@gmail.com>
7679
7680 * nsterm.m (ns_get_color): Recognize HSB,AHSB be synonyms for HSV,AHSV.
7681
76822008-07-20 Adrian Robert <Adrian.B.Robert@gmail.com>
7683
7684 * Makefile.in (ns_appdir): Fix typo in find command.
7685
76862008-07-20 Dan Nicolaescu <dann@ics.uci.edu>
7687
7688 * m/intel386.h (NO_REMAP): Do no define for USG, not used.
7689
7690 * s/usg5-4.h (LIBS_SYSTEM): Remove, system for which this was
7691 added not supported anymore.
7692
7693 * s/usg5-4-2.h (LIBS_SYSTEM):
7694 * s/sol2.h (LIBS_SYSTEM): Do not undefine.
7695
7696 * s/netbsd.h (GETPGRP_NO_ARG, N_TRELOFF):
7697 * s/lynxos.h (GETPGRP_NO_ARG):
7698 * s/hpux10-20.h (NO_SIOCTL_H):
7699 * s/gnu.h (GETPGRP_NO_ARG):
7700 * s/gnu-linux.h (NO_SIOCTL_H):
7701 * s/freebsd.h (GETPGRP_NO_ARG, N_TRELOFF):
7702 * s/cygwin.h (GETPGRP_NO_ARG):
7703 * s/irix6-5.h (LIBS_SYSTEM, GETPGRP_NO_ARG): Remove, unused.
7704 (C_DEBUG_SWITCH): Remove duplicate definition.
7705
7706 * m/ibms390.h: Remove boilerplate comments.
7707
7708 * sysdep.c (closedir): Use SOLARIS2 instead of sun && USG5_4.
7709
7710 * process.c (HAVE_SERIAL): Consolidate ifdefs.
7711 (wait_reading_process_output): Remove code for SunOS, platform not
7712 supported anymore. Use SOLARIS2 instead of sun.
7713
77142008-07-19 Adrian Robert <Adrian.B.Robert@gmail.com>
7715
7716 * font.c (font_open_by_name): Under NS, default lface height to zero.
7717 (font_open_for_lface): Under NS, set size based on frame fontsize.
7718 * nsterm.m (EmacsView-changeFont:): Remove some commented code.
7719 * frame.c (x_set_frame_parameters): Remove HAVE_NS ifdef.
7720
77212008-07-19 Adrian Robert <Adrian.B.Robert@gmail.com>
7722
7723 * nsterm.m (ns_antialias_text, ns_use_qd_smoothing)
7724 (ns_use_system_highlight_color): Switch these from DEFVAR_BOOL to
7725 DEFVAR_LISP and change all code accordingly to use Qt/Qnil instead of
7726 YES/NO.
7727 * nsterm.h (prevUseHighlightColor): Make a Lisp_Object.
7728 * nsfont.m (nsfont_draw): Treat ns_use_qd_smoothing as Lisp_Object.
7729 * Makefile.in (clean): Clear out build destination dir.
7730
77312008-07-19 Adrian Robert <Adrian.B.Robert@gmail.com>
7732
7733 * Makefile.in (nsgui.h-related dependencies): Remove abbrev, xfns,
7734 xterm, xselect.
7735 * lisp.h: Remove declaration of hash_remove.
7736 * nsgui.h: Remove redefinitions of hash_remove.
7737 * fns.c (hash_remove): Rename to hash_remove_from_table.
7738
77392008-07-19 Seiji Zenitani <zenitani@mac.com>
7740
7741 * nsfont.m (nsfont_fmember_to_entity, nsfont_make_fontset_for_font):
7742 strdup() the family UTF8String before modifying it.
7743
77442008-07-19 Adrian Robert <Adrian.B.Robert@gmail.com>
7745
7746 * nsterm.m (ns_maybe_dumpglyphs_background): Compare result from
7747 NS_FACE_BACKGROUND with 0 instead of nil.
7748 * nsfont.m (nsfont_draw): Same.
7749
77502008-07-19 Chong Yidong <cyd@stupidchicken.com>
7751
7752 * nsfns.m (ns_set_background_color): Fix crash.
7753
77542008-07-18 Chong Yidong <cyd@stupidchicken.com>
7755
7756 * Makefile.in (SOME_MACHINE_LISP): Remove ns-carbon-compat.elc.
7757
77582008-07-18 Dan Nicolaescu <dann@ics.uci.edu>
7759
7760 * puresize.h (BASE_PURESIZE): Increase to 1240000.
7761
77622008-07-17 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
7763
7764 * gtkutil.c: Include <config.h> instead of "config.h".
7765
7766 * lisp.h (Foverlay_buffer): Add EXFUN.
7767
7768 * process.c (create_process) [!WINDOWSNT && FD_CLOEXEC]: Wait for
7769 child process to complete child_setup. Undo 2005-09-21 change.
7770
7771 * s/darwin.h: Mention setsid after vfork.
7772
77732008-07-17 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
7774
7775 * Makefile.in (frame.o, keyboard.o, xdisp.o, xfaces.o):
7776 Depend on macgui.h.
7777
7778 * macfns.c (Fx_server_version): Don't use gestaltSystemVersionMajor,
7779 gestaltSystemVersionMinor, or gestaltSystemVersionBugFix.
7780
7781 * macterm.c (keycode_to_xkeysym_table): Add entries for f17, f18,
7782 and f19.
7783 [MAC_OSX] (fn_keycode_to_keycode_table): Likewise.
7784
7785 * macterm.h (gestaltSystemVersionMajor, gestaltSystemVersionMinor)
7786 (gestaltSystemVersionBugFix) [MAC_OS_X_VERSION_MAX_ALLOWED < 1040]:
7787 Remove enumerators.
7788
7789 * mactoolbox.c [USE_MAC_TSM] (mac_handle_text_input_event):
7790 Check if FACE_FROM_ID returns NULL.
7791
77922008-07-17 David Robinow <drobinow@gmail.com> (tiny change)
7793
7794 * w32inevt.c (change_frame_size): Remove extern declaration.
7795 (resize_event, maybe_generate_resize_event): Pass SAFE arg to
7796 change_frame_size.
7797
77982008-07-17 Adrian Robert <Adrian.B.Robert@gmail.com>
7799
7800 * getloadavg.c: Revert last change (2008-07-15).
7801
78022008-07-17 Adrian Robert <Adrian.B.Robert@gmail.com>
7803
7804 * Makefile.in: Replace emacsapp, emacsbindir, emacsappsrc variables
362654a6 7805 set here with ns_appdir, ns_appresdir, ns_appbindir, ns_appsrc set
aac0c6e3
MR
7806 from configure.
7807
78082008-07-17 Dan Nicolaescu <dann@ics.uci.edu>
7809
7810 * s/sol2.h:
7811 * s/sol2-4.h: Reorganize conditionals.
7812
7813 * ecrt0.c: Remove code depending on m68000, not used anymore.
7814
7815 * fns.c (hash_remove): Make static.
7816 * lisp.h (hash_remove): Don't prototype.
7817
7818 * m/ibmrs6000.h:
7819 * m/ibms390x.h:
7820 * m/macppc.h: Remove boilerplate comments.
7821
7822 * m/sparc.h (A_TEXT_OFFSET, A_TEXT_SEEK): Remove, only used on
7823 Solaris, which does not need them.
7824
7825 * m/vax.h: Remove comments about unsupported systems.
7826
7827 * s/darwin.h: Reorganize ifdefs.
7828
78292008-07-17 Andreas Schwab <schwab@suse.de>
7830
7831 * s/cygwin.h (LIB_STANDARD_LIBSRC): Don't define.
7832
78332008-07-17 Stefan Monnier <monnier@iro.umontreal.ca>
7834
7835 Use SDATA. Follow coding convention of placing operators at
7836 beginning of next line rather than end of previous line, and placing
7837 spaces around infix operators.
7838
7839 * Makefile.in: Undef LIB_STANDARD before defining it to silence warning
7840 in case it was defined already.
7841 USE @GNUSTEP_MAKEFILES@ rather than envvars.
7842 * nsterm.m (ns_term_init): Pass Qt and Qnil rather than YES/NO to
7843 ns_default.
7844 (applicationShouldTerminate, setValuesFromPanel): Use EQ to compare
7845 Lisp_Objects.
7846 * nsterm.h (Fx_display_grayscale_p, Fx_display_planes)
7847 (ns_defined_color, ns_color_to_lisp): Declare.
7848 * nsselect.m (ns_handle_selection_request, ns_handle_selection_clear)
7849 (Fns_own_selection_internal): Make the big ugly hack more explicit, so
7850 it's accepted even with USE_LISP_UNION_TYPE.
7851 * nsmenu.m (ns_update_menubar): Use EQ to compare Lisp_Objects.
7852 (update_frame_tool_bar): Remove apparently obsolete tests for
7853 non-integerness of f->tool_bar_lines.
7854 (windowShouldClose, addButton, clicked, runDialogAt): Make the big ugly
7855 hack more explicit, so it's accepted even with USE_LISP_UNION_TYPE.
7856 * nsfont.m (nsfont_driver): Use just 0 rather than an invalid cast.
7857 (nsfont_open): Don't confuse NULL for Qnil.
7858 * nsfns.m (ns_implicitly_set_icon_type): Use EQ to compare Lisp_Objects.
7859 * menu.h (find_and_call_menu_selection):
7860 * menu.c (find_and_call_menu_selection): Use just int for vector size.
7861 (find_and_return_menu_selection): Always return something.
7862 * frame.h: Include dispextern.h for Display_Info.
7863 (display_x_get_resource): Declare.
7864
78652008-07-16 Adrian Robert <Adrian.B.Robert@gmail.com>
7866
7867 * syntax.c: Remove stdio.h include accidentally introduced in
7868 Emacs.app commit.
7869 * Makefile.in: Change GNUSTEP to NS_IMPL_GNUSTEP, COCOA to
7870 NS_IMPL_COCOA.
7871 * keyboard.c (handle_async_input, input_available_signal): Remove
7872 BSD4_1 conditional code, introduced accidentally in Emacs.app commit.
7873
78742008-07-16 Stefan Monnier <monnier@iro.umontreal.ca>
7875
7876 * nsterm.m (lisp_to_mod): Use parse_solitary_modifier instead.
7877 (ns_lisp_to_color): Don't mess with internal Lisp data fields.
7878 (ns_term_init, ns_term_shutdown, initFrameFromEmacs, ns_list_fonts):
7879 Use SDATA.
7880
7881 * keymap.c: Remove all NS-specific code.
7882 (where_is_preferred_modifier, Vwhere_is_preferred_modifier): New vars.
7883 (preferred_sequence_p): Rename from ascii_sequence_p; pay attention to
7884 where_is_preferred_modifier, return a different value depending on how
7885 preferred is the binding.
7886 (where_is_internal): Adjust accordingly.
7887 (Fwhere_is_internal): Refresh where_is_preferred_modifier.
7888 Adjust to new preferred_sequence_p.
7889 (syms_of_keymap): Declare `where-is-preferred-modifier'.
7890 * keyboard.c (parse_solitary_modifier): Not static any more.
7891 * keyboard.h (parse_solitary_modifier): Declare.
7892
78932008-07-16 Andreas Schwab <schwab@suse.de>
7894
7895 * Makefile.in (SOME_MACHINE_LISP): Remove easy-mmode, fix spelling
7896 of easymenu.
7897
78982008-07-16 Chong Yidong <cyd@stupidchicken.com>
7899
7900 * xdisp.c (move_it_in_display_line): Account for word wrap, so
7901 that we don't move off the line.
7902
79032008-07-16 Stefan Monnier <monnier@iro.umontreal.ca>
7904
7905 * keyboard.c (Qsuper): Remove.
7906 (parse_menu_item): Don't call where_is_internal specially for NS.
7907
79082008-07-16 Dan Nicolaescu <dann@ics.uci.edu>
7909
7910 * s/gnu-linux.h: Remove boilerplate comments.
7911
7912 * m/alpha.h (__ELF__): Consolidate conditions.
7913
7914 * m/m68k.h (linux): Use GNU_LINUX instead.
7915 Remove boilerplate comments.
7916
7917 * m/intel386.h: Undo refactoring from previous change.
7918 (LIB_STANDARD): All systems that define USG define LIB_STANDARD
7919 too, remove dead code.
7920 (linux): Use GNU_LINUX instead.
7921
79222008-07-16 Jason Rumney <jasonr@gnu.org>
7923
7924 * w32gui.h: Repeat 26 June changes lost by last change.
7925
79262008-07-16 Dan Nicolaescu <dann@ics.uci.edu>
7927
7928 * systty.h: Remove code for Aix on 386, unsupported platform.
7929
7930 * s/ms-w32.h: Remove boilerplate comments.
7931 (fcloseall, fgetchar, flushall, fputchar, getw, putw): Remove, unused.
7932
7933 * s/gnu-linux.h (TERM): Remove support.
7934 (HAVE_SYSVIPC): Remove, unused.
7935 (A_TEXT_OFFSET, A_TEXT_SEEK, ADJUST_EXEC_HEADER): Remove, not used
7936 for this system.
7937
7938 * process.c: Remove support for IRIS, unused.
7939 Remove support for TERM, not relevant anymore.
7940
7941 * unexalpha.c (DEFAULT_ENTRY_ADDRESS): Remove, replace the only
7942 used with the definition.
7943
7944 * s/aix4-2.h (static): Do not undef.
7945
7946 * m/ibmrs6000.h: Remove code depending on USG5_4, this file is
7947 only used on Aix.
7948 (HAVE_SYSVIPC): Remove, unused.
7949
7950 * m/hp800.h (CANNOT_DUMP): Do not undef.
7951
7952 * m/alpha.h: Fix comment.
7953
7954 * s/usg5-4.h (HAVE_SYSVIPC): Remove, unused.
7955 (USG_SHARED_LIBRARIES): Remove, only used in unexec.c which is not
7956 used by this configuration.
7957 * emacs.c: Remove code depending on USG_SHARED_LIBRARIES.
7958 * unexec.c: Remove code depending on HPUX and
7959 USG_SHARED_LIBRARIES, not used with this file. Remove code
7960 depending on IRIS, unused. Remove if 0-ed code.
7961
7962 * s/template.h: Remove comments about static.
7963
7964 * sysdep.c: Remove code depending on NEED_PTEM_H, unused.
7965 Remove if 0-ed code.
7966 (baud_convert): Don't depend on BAUD_CONVERT, all definitions the
7967 were the same as the default.
7968 * s/vms.h (BAUD_CONVERT): Remove, same as the default.
7969 Remove boilerplate comments.
7970 * s/hpux10-20.h (BAUD_CONVERT): Remove, same as the default.
7971 (HAVE_SYSVIPC): Remove, unused.
7972 (LD_SWITCH_SYSTEM_TEMACS): Simplify, hp9000s700 not supported anymore.
7973
7974 * m/ia64.h (PNTR_COMPARISON_TYPE): Remove, same as the default.
7975 Remove boilerplate comments.
7976 * m/amdx86-64.h (PNTR_COMPARISON_TYPE): Remove, same as the default.
7977 Remove boilerplate comments.
7978 * m/ibms390x.h (PNTR_COMPARISON_TYPE): Remove, same as the default.
7979 Remove boilerplate comments.
7980 * lisp.h (PNTR_COMPARISON_TYPE): Define it unconditionally.
7981
7982 * m/intel386.h (DATA_SEG_BITS): Remove definitions, only used on
7983 USG systems which do not use DATA_SEG_BITS.
7984 Refactor code. Remove boilerplate comments.
7985
7986 * m/ibms390.h:
7987 * m/m68k.h:
7988 * s/bsd-common.h:
7989 * s/cygwin.h:
7990 * s/darwin.h:
7991 * s/freebsd.h:
7992 * s/gnu.h:
7993 * s/msdos.h: Remove boilerplate comments.
7994
7995 * m/iris4d.h: Remove boilerplate comments and code for systems that
6873acca 7996 do not use this file.
aac0c6e3
MR
7997 (IRIS_4D): Remove, unused.
7998
7999 * m/mips.h: Remove boilerplate comments and code for systems that
6873acca 8000 do not use this file.
aac0c6e3
MR
8001 (SIGN_EXTEND_CHAR):
8002 * m/arm.h (SIGN_EXTEND_CHAR): Remove, unused.
8003 * unexmips.c: Remove file, unused.
8004
8005 * editfns.c (Fuser_full_name): Replace the only use of
8006 USER_FULL_NAME with its value.
8007 * config.in: Regenerate.
8008
80092008-07-16 David Reitter <david.reitter@gmail.com>
8010
8011 * Makefile.in: Add ns-win, ns-carbon-compat, easy-mmode and
8012 easy-menu to SOME_MACHINE_LISP for the new NeXTstep port.
8013
80142008-07-16 Glenn Morris <rgm@gnu.org>
8015
8016 * emacs.c (system-type): Doc fix.
8017
80182008-07-15 Stefan Monnier <monnier@iro.umontreal.ca>
8019
8020 * keyboard.c (parse_menu_item): Don't use cachelist, even under NS.
8021 If the cache doesn't work, let's fix it, rather than work around it.
8022
80232008-07-15 Adrian Robert <Adrian.B.Robert@gmail.com>
8024
8025 * Makefile.in: Correct additions for nsfont.o in last commit.
8026 * nsfont.m: New file (forgot last commit).
8027
80282008-07-15 Chris Hall <chris@web.workinglinux.com> (tiny change)
8029
8030 * callproc.c (set_initial_environment): Initialize
8031 Vprocess_environment under CANNOT_DUMP (fixes crash when
8032 batch-compiling for bootstrap).
8033
80342008-07-15 Chris Hall <chris@web.workinglinux.com> (tiny change)
8035 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
8036
8037 (make_initial_frame): Call init_frame_faces(f) in CANNOT_DUMP case --
8038 fix crash due to different init order.
8039
80402008-07-15 Adrian Robert <Adrian.B.Robert@gmail.com>
8041
8042 Changes and additions for NeXTstep windowing system (Cocoa and
8043 GNUstep) support.
8044
8045 * Makefile.in:
8046 * config.in: Support defines and build commands for NS port.
8047 * blockinput.h (BLOCK_INPUT, UNBLOCK_INPUT, TOTALLY_UNBLOCK_INPUT)
8048 (UNBLOCK_INPUT_TO): Don't use under NS unless EXPERIMENTAL_CONTROL_G.
8049 * dispextern.h: Include nsgui.h and add needed typedefs under NS
8050 windowing.
8051 (struct face): Add synth_ital field.
8052 * dispnew.c: Include nsterm.h when compiling under NS windowing.
8053 (init_display): Initialize Vinitial_window_system to "ns" when so
8054 compiled.
8055 * emacs.c: Include GSConfig.h when compiling under GNUstep.
8056 (display_arg): Use under NS.
8057 (main): Under NS, allocate autorelease pool and handle command line
8058 args. Move syms_of_xmenu() call under #ifdef HAVE_X_WINDOWS.
8059 (standard_args): Add NS-specific args.
8060 (shut_down_emacs): Shut down NS terminal if compiled under NS.
8061 * font.c (DEFAULT_ENCODING): New variable.
8062 (font_find_for_lface): Use it.
8063 (syms_of_font): Load syms_of_nsfont under NS.
8064 * font.h: Declare nsfont_driver when compiled under NS.
8065 * fontset.c: When compiling under NS, include nsterm.h.
8066 (fontset_from_font): Autoconstruct fontset under NS.
8067 * frame.c (various): Under NS, include nsterm.h, add Qns window system
8068 symbol, document and use it.
8069 (do_switch_frame): When for_deletion under Cocoa, add
8070 Fraise_frame(Qnil).
8071 (x_set_frame_parameters): Ensure font attribute changes are picked up.
8072 (x_get_arg): Allow "yes" and "no" as boolean values.
8073 (syms_of_frame): Declare Qns. Init Vdefault_frame_scroll_bars to
8074 Qright under Cocoa.
8075 (focus-follows-mouse): Default to 0 under NS.
8076 * frame.h (enum output_method): Add output_ns.
8077 (external_tool_bar, external_menu_bar, FRAME_EXTERNAL_TOOLBAR)
8078 (FRAME_EXTERNAL_MENU_BAR): Use under NS.
8079 (FRAME_WINDOW_P): NS-specific definition.
8080 * fringe.c (max_used_fringe_bitmap): Make public.
8081 * getloadavg.c (mach/mach.h): Include it under NeXT descendant OS's.
8082 (getloadavg): Use NeXT code under descendant OS's.
8083 * image.c (includes and header section, x_create_bitmap_from_data)
8084 (x_create_bitmap_from_file, free_bitmap_record, image_background)
8085 (image_background_transparent, x_clear_image_1)
8086 (x_create_x_image_and_pixmap, x_destroy_x_image, x_put_x_image)
8087 (Create_Pixmap_From_Bitmap_Data, xpm_load_image, lookup_rgb_color)
8088 (x_to_xcolors, x_from_xcolors, x_disable_image)
8089 (x_build_heuristic_mask, syms_of_image): Add NS support parallel to
8090 other GUIs, including XPM support using code originally written for
8091 Carbon GUI.
8092 (png_load, jpeg_load, tiff_load, gif_load): Add implementations
8093 using NS API.
8094 (image_ascent): Use font metrics macros instead of direct struct field
8095 access.
8096 * keyboard.c (includes): Add nsterm.h when compiling under NS.
8097 (kbd_buffer_get_event): Handle NS as other GUI windowing systems.
8098 Also, handle NS as GTK for menu bar purposes.
8099 (make_lispy_event): Handle NS as other GUI windowing systems, and as X
8100 toolkit where they differ.
8101 (parse_menu_item): Prefer keybindings using 'super' modifier. Also,
8102 use cachelist, still needed under NS.
8103 * keyboard.h (ENCODE_MENU_STRING, XtPointer, Boolean): Handle as NTGUI.
8104 (struct widget_value): Define it here for menu.c.
8105 * keymap.c (includes): Include modifier internals.
8106 (lisp_to_mod, modifier_sequence_p): New functions, compiled only under
8107 NS.
8108 (where_is_internal, Fwhere_is_internal): When compiled under NS, add
8109 support for preferring sequences using certain modifiers, specified by
8110 the FIRSTONLY argument.
8111 * lisp.h (hash_remove): Rename to avoid name clash when compiling
8112 under NS GNUstep implementation.
8113 (USE_LSB_TAG): Use it under Cocoa when compiling under NS.
8114 * lread.c (init_lread): Treat NS as HAVE_CARBON for turn_off_warning.
8115 * menu.c: Include nsterm.h under NS.
8116 (single_menu_item, parse_single_submenu, xmalloc_widget_value)
8117 (free_menubar_widget_tree_value, update_submenu_strings)
8118 (find_and_call_menu_selection): Treat NS as X and NT.
8119 (find_and_return_menu_selection): New function, used for popup menus.
8120 * nsgui.h:
8121 * nsterm.h:
8122 * nsfns.m:
8123 * nsimage.m:
8124 * nsmenu.m:
8125 * nsselect.m:
8126 * nsterm.m: New files.
8127 * process.c (wait_reading_process_output): Under NS, call ns_select()
8128 instead of plain select().
8129 * syntax.c (char_quoted): Under NS, avoid a crash when called near
8130 beginning of buffer.
8131 * sysselect.h (init_process): Rename when compiling under Cocoa to
8132 avoid name conflict.
8133 * termhooks.h (display_info): Add ns_display_info to union.
8134 * terminal.c (Fterminal_live_p): Add ns to terminal types.
8135 * terminfo.c (UP, BC, PC): Don't declare when compiling under NS in
8136 COCOA environment.
8137 * unexnext.c: Update to work with mach API on Mac OS X, and to use new
8138 unexec() signature. (Note, this will dump, but the resulting file
8139 crashes; unexosx is used instead; keeping around for reference and
8140 possible aid in getting dump working under GNUstep.)
8141 * w32gui.h (button_type, widget_value): Remove definitions (now in
8142 keyboard.h).
8143 * window.c: Include nsterm.h when compiling under NS.
8144 * xdisp.c (includes): Include nsterm.h when compiling under NS.
8145 (set_frame_menubar, update_menu_bar, display_menu_bar): Handle NS as
8146 other GUI windowing systems.
8147 (update_tool_bar, redisplay_tool_bar, redisplay_window): Handle NS as
8148 GTK.
8149 (x_consider_frame_title): Under NS, set icon type and frame
8150 modified-state indicator; use ns_set_name_as_filename() when using
8151 formatted title.
8152 (update_window_cursor): Make public when compiling under NS.
8153 (display_hourglass_p, syms_of_xdisp, hourglass_shown_p)
8154 (hourglass_atimer, Vhourglass_delay
8155 * xfaces.c (header section, init_frame_faces, clear_font_table)
8156 (defined_color, unload_color, x_face_list_fonts)
8157 (prepare_face_for_display): Add NS support parallel to other GUIs.
8158 Emulate GCs like other non-X GUIs.
8159 (split_font_name): Don't lowercase font name under NS.
8160 (merge_face_ref, Finternal_set_lisp_face_attribute): Support stippling
8161 under NS.
8162 * s/darwin.h: Add support for compilation under NS.
8163
81642008-07-15 Jason Rumney <jasonr@gnu.org>
8165
8166 * w32fns.c (Fx_create_frame): Remove duplicate unwind_protect.
8167 (w32_show_hourglass): Rename from show_hourglass.
8168 (w32_hide_hourglass): Rename from hide_hourglass.
8169 (DEFAULT_HOURGLASS_DELAY): Revert from last change.
8170 (Vhourglass_delay): Declare extern.
8171 (hourglass_started): Remove.
8172
8173 * xdisp.c (Vhourglass_delay): Remove static.
8174 (hourglass_started, start_hourglass, cancel_hourglass):
8175 Don't include these versions on WINDOWSNT.
8176
81772008-07-15 Adrian Robert <Adrian.B.Robert@gmail.com>
8178
8179 * dispextern.h (hourglass_shown_p, hourglass_atimer): New extern
8180 variables (formerly in xfns.c).
8181 (show_hourglass, hide_hourglass): New prototypes (same).
8182 * xdisp.c (display_hourglass_p, hourglass_shown_p, hourglass_atimer)
8183 (Vhourglass_delay, DEFAULT_HOURGLASS_DELAY): New variables (formerly
8184 in xfns.c).
8185 (syms_of_xdisp): Declare/initialize display-hourglass,
8186 hourglass-delay. Initialize hourglass_atimer, hourglass_shown_p.
8187 (hourglass_started, start_hourglass, cancel_hourglass): New functions,
8188 formerly in xfns.c.
8189 * xfns.c (display_hourglass_p, hourglass_atimer, hourglass_shown_p)
8190 (Vhourglass_delay, DEFAULT_HOURGLASS_DELAY, hourglass_started)
8191 (start_hourglass, cancel_hourglass): Remove.
8192 (show_hourglass, hide_hourglass): Remove prototypes and static
8193 modifiers.
8194 (syms_of_xfns): Remove display-hourglass, hourglass-delay,
8195 hourglass_atimer, hourglass_shown_p declaration/initialization.
8196 * macfns.c (display_hourglass_p, hourglass_atimer, hourglass_shown_p)
8197 (Vhourglass_delay, DEFAULT_HOURGLASS_DELAY, hourglass_started)
8198 (start_hourglass, cancel_hourglass): Remove.
8199 (show_hourglass, hide_hourglass): Remove prototypes and static
8200 modifiers.
8201 (syms_of_macfns): Remove display-hourglass, hourglass-delay,
8202 hourglass_atimer, hourglass_shown_p declaration/initialization.
8203 * w32fns.c (display_hourglass_p, Vhourglass_delay)
8204 (DEFAULT_HOURGLASS_DELAY): Remove.
8205 (syms_of_w32fns): Remove display-hourglass, hourglass-delay,
8206 hourglass_shown_p declaration/initialization.
8207
82082008-07-14 Jason Rumney <jasonr@gnu.org>
8209
8210 * w32fns.c (w32_get_arg): Remove wrapper function.
8211 (w32_createwindow, x_icon, x_create_tip_frame): Use x_get_arg
8212 directly.
8213 (Fx_create_frame): Sync with xfns.c. Use x_get_arg directly.
8214
82152008-07-14 Kenichi Handa <handa@m17n.org>
8216
8217 * xfont.c (xfont_open): Add workaround for X's bug.
8218
82192008-07-14 Emanuele Giaquinta <emanuele.giaquinta@gmail.com> (tiny change)
8220
8221 * fontset.c: Include <stdio.h> unconditionally.
8222
82232008-07-13 Michael Albinus <michael.albinus@gmx.de>
8224
8225 * dbusbind.c (Fdbus_register_signal): Allow also signal arguments
8226 for filtering.
8227
82282008-07-13 Dan Nicolaescu <dann@ics.uci.edu>
8229
8230 * s/vms.h: Use __GNUC__ instead of _GNUC_.
8231
8232 * m/macppc.h:
8233 * m/alpha.h: Use GNU_LINUX instead of LINUX. Reorganize conditionals.
8234
8235 * m/ibms390x.h (XINT, XUINT): Don't define, same as the default
8236 (SPECIAL_EMACS_INT):
8237 * m/ia64.h (SPECIAL_EMACS_INT):
8238 * m/amdx86-64.h (SPECIAL_EMACS_INT):
8239 * s/gnu.h (NLIST_STRUCT):
8240 * s/aix4-2.h (X11R5_INHIBIT_I18N):
8241 * s/gnu-linux.h (LINUX):
8242 * s/msdos.h (HAVE_FACES):
8243 * s/ms-w32.h (HAVE_FACES): Don't define, unused.
8244
8245 * systty.h:
8246 * sysdep.c (setup_pty): Don't depend on SYSV_PTYS, it is not used
8247 anymore.
8248
82492008-07-12 Dan Nicolaescu <dann@ics.uci.edu>
8250
8251 * syswait.h: Remove old if 0 code. Do not define WAITTYPE, it was
8252 always defined as int.
8253
8254 * s/netbsd.h (HAVE_UNION_WAIT, HAVE_WAIT_HEADER, WAIT_USE_INT):
8255 * s/gnu.h (HAVE_WAIT_HEADER, WAIT_USE_INT, HAVE_UNION_WAIT):
8256 * s/gnu-linux.h (HAVE_WAIT_HEADER):
8257 * s/freebsd.h (HAVE_WAIT_HEADER):
8258 * s/bsd-common.h (HAVE_UNION_WAIT):
8259 * s/aix4-2.h (HAVE_WAIT_HEADER):
8260 * m/mips.h (HAVE_UNION_WAIT):
8261 * s/usg5-4.h (HAVE_WAIT_HEADER, WAITTYPE): Do not define, not used.
8262 (COFF, static): Do not define, they are undefined later in the file.
8263
8264 * process.c (update_status): Don't use a union.
8265 (status_convert):
8266 (sigchld_handler): Use int instead of WAITTYPE.
8267
82682008-07-12 Chong Yidong <cyd@stupidchicken.com>
8269
8270 * indent.c (Fvertical_motion): Restore hscroll before moving to
8271 goal column.
8272
82732008-07-11 Dan Nicolaescu <dann@ics.uci.edu>
8274
8275 * lisp.h: Remove left over code.
8276
82772008-07-11 Andreas Schwab <schwab@suse.de>
8278
8279 * lisp.h: Fix logic in last change.
8280
8281 * menu.h: New file.
8282 * menu.c: Include it.
8283 * xmenu.c: Likewise.
8284 * Makefile.in: Update dependencies.
8285
82862008-07-11 Kenichi Handa <handa@m17n.org>
8287
8288 * fontset.c (fontset_from_font): Cancel the previous change.
8289
82902008-07-11 Dan Nicolaescu <dann@ics.uci.edu>
8291
8292 * lisp.h:
8293 * w32heap.c:
8294 * emacs.c:
8295 * alloc.c: Replace all references of NO_UNION_TYPE with
8296 USE_LISP_UNION_TYPE.
8297
8298 * m/xtensa.h (NO_UNION_TYPE):
8299 * m/vax.h (NO_UNION_TYPE):
8300 * m/template.h (NO_UNION_TYPE):
8301 * m/sparc.h (NO_UNION_TYPE):
8302 * m/mips.h (NO_UNION_TYPE):
8303 * m/macppc.h (NO_UNION_TYPE):
8304 * m/m68k.h (NO_UNION_TYPE):
8305 * m/iris4d.h (NO_UNION_TYPE):
8306 * m/intel386.h (NO_UNION_TYPE):
8307 * m/ibms390x.h (NO_UNION_TYPE):
8308 * m/ibms390.h (NO_UNION_TYPE):
8309 * m/ibmrs6000.h (NO_UNION_TYPE):
8310 * m/ia64.h (NO_UNION_TYPE):
8311 * m/hp800.h (NO_UNION_TYPE):
8312 * m/arm.h (NO_UNION_TYPE):
8313 * m/amdx86-64.h (NO_UNION_TYPE):
8314 * m/alpha.h (NO_UNION_TYPE): Remove definition, all platform were
8315 defining it the same.
8316
83172008-07-10 Chong Yidong <cyd@stupidchicken.com>
8318
8319 * xdisp.c (move_it_to): Backtrack if past the edge of a wrapped line.
8320
83212008-07-10 Dan Nicolaescu <dann@ics.uci.edu>
8322
8323 * fileio.c:
8324 * sysdep.c
8325 * systty.h:
8326 * m/ibmrs6000.h:
8327 * m/iris4d.h:
8328 * s/aix4-2.h:
8329 * s/freebsd.h:
8330 * s/gnu-linux.h:
8331 * s/hpux10-20.h:
8332 * s/hpux11.h:
8333 * s/netbsd.h:
8334 * s/sol2-3.h:
8335 * s/sol2-4.h:
8336 * s/sol2.h:
8337 * s/usg5-4.h:
8338 * s/vms.h: Remove references to unused variables.
8339
83402008-07-10 Andreas Schwab <schwab@suse.de>
8341
8342 * ftfont.c (ftfont_resolve_generic_family): Remove foundry from
8343 pattern before matching the generic family.
8344
83452008-07-10 Dan Nicolaescu <dann@ics.uci.edu>
8346
8347 * unexec.c:
8348 * s/vms.h:
8349 * s/usg5-4-2.h:
8350 * s/sol2-5.h:
8351 * s/freebsd.h:
8352 * s/darwin.h: Remove dead code.
8353
8354 * m/template.h:
8355 * m/sparc.h:
8356 * m/mips.h:
8357 * m/m68k.h:
8358 * m/iris4d.h:
8359 * m/intel386.h:
8360 * m/ibms390x.h:
8361 * m/ibms390.h:
8362 * m/ia64.h:
8363 * m/hp800.h:
8364 * m/arm.h:
8365 * m/amdx86-64.h: Remove dead code and references to unused
8366 and compiler defined symbols.
8367
8368 * unexmips.c:
8369 * unexelf.c: Remove references to desupported systems.
8370
8371 * m/powermac.h: Remove file, it is now identical to m/macppc.h.
8372
8373 * m/powermac.h: Remove boilerplate comments.
8374 (NO_REMAP): Remove unused definition.
8375
8376 * m/macppc.h (UNEXEC, NO_TERMIO): Don't define, the s/ files
8377 define them.
8378
83792008-07-10 Kenichi Handa <handa@m17n.org>
8380
8381 * xfont.c (xfont_open): Log the reason of failure.
8382
83832008-07-09 Stefan Monnier <monnier@iro.umontreal.ca>
8384
8385 * fontset.c (fontset_get_font_group):
8386 * font.c (font_check_otf): Specify argument types.
8387
83882008-07-09 Kenichi Handa <handa@m17n.org>
8389
8390 * coding.c (detect_coding_utf_8): Set detect_info->found only when
8391 non-ASCII char is found.
8392
8393 * fontset.c (fontset_compare_rfontdef): Fix plus/minus.
8394 (reorder_font_vector): Change the arg preferred_family to font.
8395 Prefer the spec matching with font.
8396 (fontset_get_font_group): New function.
8397 (fontset_find_font): Change the format of an element of a realized
8398 fontset. Use fontset_get_font_group.
8399 (fontset_font): Try the current fontset, the default fontset, the
8400 fallbacks of the current fontset, and the fallbacks of the default
8401 fontset in this order.
8402 (face_for_char): Delete the shortcut to use the current font.
8403 (fontset_from_font): Don't set fonts for Latin in the fontset.
8404
8405 * font.h (font_make_object, font_match_p): Adjust prototypes.
8406
8407 * ftfont.h [FT_BDF_H]: Include FT_BDF_H.
8408
8409 * font.c (font_make_object): New arg entity and pixelsize.
8410 (font_check_otf_features, font_check_otf): New functions.
8411 (font_match_p): Check :lang, :script, and :otf properties.
8412
8413 * xfont.c (xfont_open): Adjust it for the change of
8414 font_make_object.
8415 (xfont_text_extents): Fix initial setting of metrics.
8416
8417 * ftfont.c (struct ftfont_info): New member index, delete member
8418 fc_charset_idx. Make the member order compatible with struct
8419 xftfont_info.
8420 (fc_charset_table): Change charset names to registry names.
8421 (ftfont_pattern_entity): Delete the args registry and
8422 fc_charset_idx. Change the value of :font-entity property
8423 to (FONTNAME . INDEX). Always set :registry property to
8424 `iso10646-1'.
8425 (struct ftfont_cache_data): New struct.
8426 (ftfont_lookup_cache): New arg for_face.
8427 (ftfont_get_fc_charset, ftfont_get_otf): New functions.
8428 (ftfont_driver): Set the member otf_capability.
8429 (ftfont_get_charset): Adjust it for the change of
8430 fc_charset_table.
8431 (OTF_TAG_SYM): New macro.
8432 (ftfont_spec_pattern): Delete the arg fc_charset_idx. Adjust it
8433 for the change of fc_charset_table.
8434 (ftfont_list): Adjust it for the change of ftfont_spec_pattern and
8435 ftfont_pattern_entity. Add FC_INDEX to objset.
8436 (ftfont_match): Adjust it for the change of ftfont_spec_pattern
8437 and ftfont_pattern_entity.
8438 (ftfont_open): Adjust it for the change of ftfont_lookup_cache,
8439 font_make_object, struct ftfont_info.
8440 (ftfont_has_char): Use ftfont_get_fc_charset.
8441 (ftfont_otf_features, ftfont_otf_capability): New functions.
8442 (ftfont_shape): Use ftfont_get_otf.
8443 (ftfont_text_extents): Fix initial setting of metrics.
8444
8445 * xftfont.c (struct xftfont_info): New member ft_size. Make the
8446 member order compatible with struct ftfont_info.
8447 (xftfont_open): Add FC_CHARSET to the pattern. Set
8448 xftfont_info->ft_size. Don't unlock the face. Check BDF
8449 properties if appropriate.
8450 (xftfont_close): Unlock the face.
8451 (xftfont_anchor_point, xftfont_shape): Deleted.
8452 (syms_of_xftfont): Don't set members anchor_point and shape of
8453 xftfont_driver.
8454
8455 * w32uniscribe.c (uniscribe_open): Adjust it for the change of
8456 font_make_object.
8457
8458 * w32font.c (w32font_open): Adjust it for the change of
8459 font_make_object.
8460 (w32font_open_internal): Don't set properties of font_object here.
8461
84622008-07-08 Chong Yidong <cyd@stupidchicken.com>
8463
8464 * macfns.c (x_create_tip_frame):
8465 * w32fns.c (x_create_tip_frame):
8466 * xfns.c (x_create_tip_frame): Pass parameter argument to
8467 face-set-after-frame-default.
8468
8469 * xfaces.c (Finternal_merge_in_global_face): Save merged
8470 attributes for the default face back into the face vector.
8471
84722008-07-08 Andreas Schwab <schwab@suse.de>
8473
8474 * fontset.h: Declare fontset_from_font. Don't declare
8475 new_fontset_from_font and fontset_from_font_name.
8476 * xterm.c: Include "fontset.h".
8477 * Makefile.in (xterm.o): Update dependencies.
8478
84792008-07-08 Glenn Morris <rgm@gnu.org>
8480
8481 * m/sparc.h: Define __sparc__ rather than sparc. (Bug#507.)
8482 * alloc.c, ecrt0.c: Use __sparc__ rather than sparc.
8483
84842008-07-07 Chong Yidong <cyd@stupidchicken.com>
8485
8486 * frame.c (Qinhibit_face_set_after_frame_default): Var deleted.
8487 (x_set_frame_parameters): Don't bind it.
8488
84892008-07-07 Juanma Barranquero <lekktu@gmail.com>
8490
8491 * w32fns.c (map_w32_filename): Declare extern.
8492
84932008-07-07 Jason Rumney <jasonr@gnu.org>
8494
8495 * w32term.c (WS_EX_LAYERED): Define if not already.
8496
84972008-07-06 Chong Yidong <cyd@stupidchicken.com>
8498
8499 * xfaces.c (set_font_frame_param): Don't try to set the font
8500 parameter if it is still unspecified in the lface.
8501
85022008-07-05 Chong Yidong <cyd@stupidchicken.com>
8503
8504 * xfaces.c (Finternal_merge_in_global_face): Don't realize default
8505 face if it didn't already exist.
8506
8507 * xdisp.c (try_window_id): Give up if word-wrapping is on.
8508
85092008-07-05 Andreas Schwab <schwab@suse.de>
8510
8511 * xdisp.c (get_it_property): Move out of HAVE_WINDOW_SYSTEM section.
8512
85132008-07-05 Chong Yidong <cyd@stupidchicken.com>
8514
8515 * xdisp.c (IT_OVERFLOW_NEWLINE_INTO_FRINGE): Turn it off if
8516 word-wrapping.
8517 (IT_DISPLAYING_WHITESPACE): New macro.
8518 (move_it_in_display_line_to): Handle MOVE_TO_X requests properly
8519 when word-wrapping. Simplify word-wrapping logic. Use correct
8520 pixel positions when saving copies of the iterator.
8521 (display_line): Use proper wrap point if the last character on a
8522 line was preceded by whitespace.
8523
85242008-07-04 Stefan Monnier <monnier@iro.umontreal.ca>
8525
8526 * Makefile.in (${etc}DOC): Depend on ${lisp} rather than ${shortlisp}.
8527
85282008-07-04 Kenichi Handa <handa@m17n.org>
8529
8530 * fns.c (Fstring_to_unibyte): Delete the arg ACCEPT-LATIN-1.
8531
8532 * lisp.h: EXFUN adjusted for the change of Fstring_to_unibyte.
8533
85342008-07-02 Jason Rumney <jasonr@gnu.org>
8535
8536 * xfns.c (syms_of_xfns): Only define x-select-font when both
2ae37cf0 8537 HAVE_FREETYPE and USE_GTK.
aac0c6e3
MR
8538
8539 * xdisp.c (next_element_from_display_vector): Move assignment out
8540 of if statement.
8541
85422008-07-02 Toru Tsuneyoshi <t_tuneyosi@hotmail.com>
8543
8544 * lisp.h (Qdelete_file, Qdelete_directory): Declare extern.
8545
8546 * fileio.c (delete_by_moving_to_trash, Qmove_file_to_trash): New vars.
8547 (syms_of_fileio): Initialize and export them.
8548 (Fdelete_directory, Fdelete_file): Optionally delete via trash.
8549
8550 * w32fns.c (FOF_NO_CONNECTED_ELEMENTS): Define if not already.
8551 (Fsystem_move_file_to_trash): New function.
8552 (syms_of_w32fns): Export it to lisp.
8553
85542008-07-01 Jason Rumney <jasonr@gnu.org>
8555
8556 * w32font.c (w32font_text_extents): Don't count overhang as part
8557 of width.
8558
85592008-06-30 Miles Bader <miles@gnu.org>
8560
8561 * dispextern.h (struct glyph, struct it, struct iterator_stack_entry):
8562 Add `avoid_cursor_p' field.
8563
8564 * xdisp.c (push_it, pop_it): Save/restore avoid_cursor_p field.
8565 (set_cursor_from_row): Skip glyphs with avoid_cursor_p set.
8566 (append_glyph, append_composite_glyph, produce_image_glyph)
8567 (append_stretch_glyph): Initialize avoid_cursor_p.
8568 (get_it_property): Rename from `get_line_height_property'.
8569 (x_produce_glyphs): Use get_it_property.
8570 (handle_line_prefix, push_display_prop): New functions.
8571 (display_line, move_it_in_display_line_to): Handle line/wrap prefixes.
8572 (Vwrap_prefix, Qwrap_prefix, Vline_prefix, Qline_prefix):
8573 New variables.
8574 (syms_of_xdisp): Initialize them.
8575
85762008-06-30 Kenichi Handa <handa@m17n.org>
8577
8578 * xftfont.c (xftfont_open): Don't call FcConfigSubstitute and
8579 XftDefaultSubstitute (they are called in XftFontMatch).
8580 (xftfont_open): Fix args to ftfont_font_format.
8581
8582 * ftfont.c (fc_charset_table): New member lang.
8583 (ftfont_resolve_generic_family): New arg pattern.
60612c8f 8584 (ftfont_spec_pattern): Check fc_charset_table[]->lang.
aac0c6e3
MR
8585 (ftfont_list): Call ftfont_resolve_generic_family with `pattern'.
8586 (ftfont_open): Fix args to ftfont_font_format.
8587 (ftfont_font_format): New arg filename.
8588
85892008-06-30 Chong Yidong <cyd@stupidchicken.com>
8590
8591 * xfaces.c (Finternal_merge_in_global_face): If default face was
8592 modified, realize it again. Update the font face attribute.
8593
85942008-06-29 Jason Rumney <jasonr@gnu.org>
8595
8596 * w32term.c (x_set_frame_alpha): Fix logic.
8597
85982008-06-29 Kenichi Handa <handa@m17n.org>
8599
8600 * fontset.c (Finternal_char_font): Return font-object instead of
8601 font-name.
8602
8603 * composite.c (get_composition_id): Fix the width calculation for TAB.
8604
86052008-06-29 Stefan Monnier <monnier@iro.umontreal.ca>
8606
8607 * indent.c (Fvertical_motion): Properly handle float column arg.
8608
86092008-06-28 Jason Rumney <jasonr@gnu.org>
8610
8611 * w32term.c (pfnGetFontUnicodeRanges): Remove unused function pointer.
8612 (pfnSetLayeredWindowAttributes): New function pointer.
8613 (w32_initialize): Initialize it when supported.
8614 (x_set_frame_alpha): New function.
8615
8616 * w32fns.c (Fx_create_frame): Initialize frame parameter `alpha'.
8617 (w32_frame_parm_handlers): Set alpha handler.
8618
8619 * frame.c (x_set_alpha) [HAVE_NTGUI]: Call x_set_frame_alpha.
8620
86212008-06-27 Jason Rumney <jasonr@gnu.org>
8622
8623 * w32fns.c (x_to_w32_font, w32_to_x_font, x_to_w32_weight)
8624 (w32_to_x_weight, w32_to_all_x_charsets): Remove obsolete functions.
8625 (w32_to_x_charset, x_to_w32_charset)
8626 (Qw32_charset_ansi, Qw32_charset_symbol, Qw32_charset_default)
8627 (Qw32_charset_shiftjis, Qw32_charset_hangeul, Qw32_charset_johab)
8628 (Qw32_charset_chinesebig5, Qw32_charset_gb2312, Qw32_charset_oem)
8629 (Qw32_charset_easteurope, Qw32_charset_turkish, Qw32_charset_baltic)
8630 (Qw32_charset_russian, Qw32_charset_arabic, Qw32_charset_greek)
8631 (Qw32_charset_hebrew, Qw32_charset_vietnamese, Qw32_charset_thai)
8632 (Qw32_charset_mac, Vw32_charset_info_alist): Move to w32font.c.
8633 (Qw32_charset_unicode): Remove.
8634 (syms_of_w32fns): Update for above changes.
8635
8636 * w32font.c (w32_to_x_charset, x_to_w32_charset)
8637 (Qw32_charset_ansi, Qw32_charset_symbol, Qw32_charset_default)
8638 (Qw32_charset_shiftjis, Qw32_charset_hangeul, Qw32_charset_johab)
8639 (Qw32_charset_chinesebig5, Qw32_charset_gb2312, Qw32_charset_oem)
8640 (Qw32_charset_easteurope, Qw32_charset_turkish, Qw32_charset_baltic)
8641 (Qw32_charset_russian, Qw32_charset_arabic, Qw32_charset_greek)
8642 (Qw32_charset_hebrew, Qw32_charset_vietnamese, Qw32_charset_thai)
8643 (Qw32_charset_mac, Vw32_charset_info_alist): Move from w32fns.c.
8644 (syms_of_w32font): Update for above changes.
8645
86462008-06-27 Dan Nicolaescu <dann@ics.uci.edu>
8647
8648 * s/usg5-4.h: Fix previous change: keep the correct branch of a
8649 removed #if.
8650 (USG_SHARED_LIBRARIES): Remove duplicate definition.
8651
86522008-06-26 Juanma Barranquero <lekktu@gmail.com>
8653 Eli Zaretskii <eliz@gnu.org>
8654
8655 * makefile.w32-in (LOCAL_FLAGS):
8656 Don't include WINDOWSNT, DOS_NT and _UCHAR_T.
8657
8658 * sysdep.c (_spawnlp, _getpid):
8659 Declare with explicit _cdecl instead of _CRTAPI1.
8660
8661 * editfns.c (Fget_internal_run_time):
8662 Check for WINDOWSNT with #ifdef, not #if.
8663
86642008-06-26 Jason Rumney <jasonr@gnu.org>
8665
8666 * w32font.h (FONT_HANDLE, FONT_TEXTMETRIC): New macros.
8667
8668 * w32term.c (x_draw_glyph_string_foreground)
8669 (x_draw_composite_glyph_string_foreground): Sync with xterm.c.
8670 Use FONT_HANDLE macro.
8671 (x_draw_glyph_string): Use FONT_TEXTMETRIC macro.
8672
8673 * w32uniscribe.c (uniscribe_otf_capability, uniscribe_shape)
8674 (uniscribe_encode_char): Use FONT_HANDLE macro.
8675
8676 * w32font.c (Fx_select_font): Use FONT_HANDLE macro.
8677 (w32font_text_extents): Use precast w32_font.
8678 (w32font_close): Free cached metrics.
8679 (w32font_open_internal): Allocate space for name on stack.
8680
86812008-06-26 Chong Yidong <cyd@stupidchicken.com>
8682
8683 * xdisp.c (extend_face_to_end_of_line): Fix last change.
8684
86852008-06-26 Jason Rumney <jasonr@gnu.org>
8686
8687 * w32term.h (FONT_AVG_WIDTH): Remove obsolete macro.
8688 (CP_8BIT, CP_UNICODE, CP_UNKNOWN): Remove obsolete constants.
8689
86902008-06-26 Juanma Barranquero <lekktu@gmail.com>
8691
8692 * Makefile.in (SOME_MACHINE_OBJECTS): Remove w32bdf.o.
8693
86942008-06-26 Jason Rumney <jasonr@gnu.org>
8695
8696 * w32bdf.c, w32bdf.h: Remove obsolete files.
8697
8698 * makefile.w32-in: Remove refs to w32bdf.h and w32bdf.c.
8699
8700 * w32gui.h: Don't include w32bdf.h.
8701 (XCharStruct, enum w32_char_font_type, W32FontStruct):
8702 Remove obsolete font support.
8703
8704 * w32font.h (struct w32font_info): Remove compat_w32_font.
8705 Add hfont member.
8706 (FONT_COMPAT): Remove obsolete macro.
8707
8708 * w32font.c (w32font_close): Remove compat code. Delete hfont member.
8709 (w32font_encode_char, w32font_text_extents): Use new hfont member.
8710 (w32font_open_internal): Remove compat code. Set new hfont member.
8711 (Fx_select_font): Use new hfont member.
8712
8713 * w32uniscribe.c (uniscribe_otf_capability, uniscribe_shape)
8714 (uniscribe_encode_char): Use new hfont member.
8715
8716 * w32term.c (x_draw_glyph_string_foreground)
8717 (x_draw_composite_glyph_string_foreground): Use new hfont member.
8718 (x_draw_glyph_string): Use metrics in w32font_info.
8719
87202008-06-26 Kenichi Handa <handa@m17n.org>
8721
8722 * xdisp.c (handle_auto_composed_prop): Fix for the terminal case.
8723
87242008-06-26 Dan Nicolaescu <dann@ics.uci.edu>
8725
8726 * unexnext.c:
8727 * m/ews4800.h:
8728 * m/hp9000s300.h:
8729 * m/ibm370aix.h:
8730 * m/mips-siemens.h:
8731 * m/ncr386.h:
8732 * m/next.h:
8733 * m/pmax.h:
8734 * m/powerpcle.h:
8735 * m/tandem-s2.h:
8736 * s/386bsd.h:
8737 * s/bsd386.h:
8738 * s/bsd4-1.h:
8739 * s/bsd4-2.h:
8740 * s/bsdos2-1.h:
8741 * s/bsdos2.h:
8742 * s/bsdos3.h:
8743 * s/bsdos4.h:
8744 * s/nextstep.h:
8745 * s/ultrix4-3.h:
8746 * s/usg5-0.h:
8747 * s/usg5-2-2.h:
8748 * s/usg5-2.h:
8749 * s/usg5-4-3.h:
8750 * s/ux4800.h:
8751 * s/uxpds.h:
8752 * s/uxpv.h: Remove support for obsolete systems.
8753 * s/hpux.h, s/hpux10.h, s/hpux8.h, s/hpux9.h, s/hpux9shr.h:
8f3a3ac2 8754 Remove, insert contents in s/hpux10-20.h.
aac0c6e3
MR
8755 * s/aix3-1.h, s/aix3-2-5.h, s/aix3-2.h, s/aix4-1.h, s/aix4.h:
8756 Remove, insert contents in s/aix4-2.h.
8757 * s/usg5-3.h: Remove, insert contents in s/usg5-4.h.
8758 * s/bsd4-3.h: Rename to ...
8759 * s/bsd-common.h: ... this.
8760 * data.c:
8761 * doc.c:
8762 * ecrt0.c:
8763 * emacs.c:
8764 * fileio.c:
8765 * floatfns.c:
8766 * keyboard.c:
8767 * mem-limits.h:
8768 * print.c:
8769 * process.c:
8770 * sysdep.c:
8771 * syssignal.h:
8772 * systty.h:
8773 * syswait.h:
8774 * term.c:
8775 * unexec.c:
8776 * unexelf.c:
8777 * unexhp9k800.c:
8778 * m/hp800.h:
8779 * m/ibmrs6000.h:
8780 * m/mips.h:
8781 * m/vax.h:
8782 * s/darwin.h:
8783 * s/freebsd.h:
8784 * s/gnu.h:
8785 * s/ms-w32.h:
8786 * s/msdos.h:
8787 * s/netbsd.h:
8788 * s/template.h: Remove references to obsolete variables.
8789
8790 * Makefile.in: Add dependencies for all unexec files.
8791 (admindir): Remove unused variable.
8792 (UNEXEC_SRC): Remove references.
8793
87942008-06-25 Chong Yidong <cyd@stupidchicken.com>
8795
8796 * xfns.c (x_default_font_parameter): If Xft is available, first
8797 try Monospace-12 for the default font.
8798
87992008-06-25 Jason Rumney <jasonr@gnu.org>
8800
8801 * xdisp.c (get_glyph_face_and_encoding): Encode invalid glyphs as 0.
8802
88032008-06-25 Stefan Monnier <monnier@iro.umontreal.ca>
8804
8805 * bytecode.c (Fbyte_code): Disable debugging code that doesn't compile.
8806
8807 * buffer.c (syms_of_buffer): Remove default-word-wrap.
8808
88092008-06-25 Juanma Barranquero <lekktu@gmail.com>
8810
8811 * xdisp.c (syms_of_xdisp) <truncate-partial-width-windows>: Doc fix.
8812 <scroll-conservatively>: Fix typo in docstring.
8813
8814 * xselect.c (Fx_send_client_event): Doc fix.
8815
88162008-06-25 Kenichi Handa <handa@m17n.org>
8817
8818 * xfaces.c (Fx_list_fonts): Call Flist_fonts with the arg PREFER.
8819
8820 * font.c (font_parse_fcname): Remove unused variables.
8821 (font_sort_entites): Delete the arg SPEC. Caller changed.
8822 Fix for the case of ! best_only.
8823 (font_delete_unmatched): Check DPI and AVGWIDTH too.
8824
8825 * lisp.h (Fstring_to_unibyte): EXFUN it.
8826
8827 * character.h (str_to_unibyte): Extern it.
8828
8829 * character.c (str_to_unibyte): New function.
8830
8831 * fns.c (Fstring_to_unibyte): New function.
8832 (syms_of_fns): Defsubr it.
8833
88342008-06-24 Kenichi Handa <handa@m17n.org>
8835
8836 * font.c (font_score): Even if the PIXEL_SIZE is the same, check
8837 DPI too.
8838 (font_sort_entites): Setup prefer_prop[FONT_DPI_INDEX] too.
8839
88402008-06-24 Andreas Schwab <schwab@suse.de>
8841
8842 * Makefile.in (${lispsource}loaddefs.el): Rename from
8843 ../lisp/loaddefs.el.
8844 (bootstrap-clean): Do what distclean does but don't remove
8845 Makefile.
8846 (distclean): Depend on bootstrap-clean and remove Makefile.
8847
88482008-06-24 Chong Yidong <cyd@stupidchicken.com>
8849
8850 * buffer.h (struct buffer): New member word_wrap.
8851
8852 * buffer.c (syms_of_buffer): New variables default-word-wrap and
8853 word-wrap.
8854 (init_buffer_once): Initialize them.
8855
8856 * dispextern.h (struct it): Replace bool truncate_lines_p with a
8857 line_wrap enum possessing three possible values.
8858
8859 * termopts.h: Replace truncate_partial_width_windows with
8860 Vtruncate_partial_width_windows.
8861
8862 * dispnew.c (direct_output_for_insert): Avoid direct output when
8863 inserting a space with word wrap on.
8864
8865 * indent.c (compute_motion): Obey integer values of
8866 truncate-partial-width-windows.
8867
8868 * xdisp.c (Vtruncate_partial_width_windows): New Lisp_Object,
8869 replacing truncate_partial_width_windows.
8870 (init_iterator): If Vtruncate_partial_width_windows is an integer,
8871 truncate only if the window width is below that integer.
8872 (start_display, resize_mini_window, produce_stretch_glyph)
8873 (display_string, move_it_in_display_line_to): Use line_wrap.
8874 (back_to_previous_visible_line_start, reseat_1): Reset
8875 string_from_display_prop_p.
8876 (display_line): Extend default face to end of line when wrapping.
8877
88782008-06-24 Kim F. Storm <storm@cua.dk>
8879
8880 * xdisp.c (display_line, move_it_in_display_line_to): Add ability
8881 to wrap continued lines at word boundaries.
8882
88832008-06-24 Jason Rumney <jasonr@gnu.org>
8884
8885 * font.c (Ffont_face_attributes): Multiply pixel size before point
8886 conversion to avoid multiplying rounding error.
8887
88882008-06-23 Jason Rumney <jasonr@gnu.org>
8889
8890 * w32term.c (x_draw_glyph_string_background)
8891 (x_draw_glyph_string): Remove old bdf font code.
8892
8893 * w32term.h (FONT_TYPE_FOR_UNIBYTE, FONT_TYPE_FOR_MULTIBYTE): Remove.
8894
88952008-06-22 Kenichi Handa <handa@m17n.org>
8896
8897 * font.c (font_find_for_lface): Try the adstyle specified in
8898 the property of LFACE_FONT of LFACE (if any).
8899
89002008-06-21 Seiji Zenitani <zenitani@mac.com>
8901 Ryo Yoshitake <ryo@shiftmode.net>
8902
8903 * xterm.c (x_set_frame_alpha): Add x_catch_errors for bug#437.
8904
89052008-06-22 Stefan Monnier <monnier@iro.umontreal.ca>
8906
8907 * Makefile.in (${lisp} ${SOME_MACHINE_LISP}, ../lisp/loaddefs.el):
8908 Use $(BOOTSTRAPEMACS) rather than witness-emacs.
8909 (bootstrap-emacs${EXEEXT}): Merge witness-emacs into it.
8910 (witness-emacs): Remove.
8911 (lisp, shortlisp): Move loaddefs.el earlier.
8912 (mostlyclean): Forget about witness-emacs.
8913
89142008-06-22 Glenn Morris <rgm@gnu.org>
8915
8916 * Makefile.in (witness-emacs): Depend on temacs${EXEEXT}.
8917 (.SUFFIXES): Declare .el.elc as a suffix rule, for non-GNU makes.
8918
89192008-06-21 Stefan Monnier <monnier@iro.umontreal.ca>
8920
8921 * Makefile.in (PRECOMP): Remove.
8922 (${lisp} ${SOME_MACHINE_LISP}): Remove pseudo dependency on PRECOMP.
8923 (witness-emacs): Run `compile-first'.
8924 (.el.elc): Use the new compile-onefile target.
8925
89262008-06-21 Kenichi Handa <handa@m17n.org>
8927
8928 * xftfont.c (xftfont_open): Handle QCembolden only when
8929 FC_EMBOLDEN is defined.
8930
89312008-06-21 Andreas Schwab <schwab@suse.de>
8932
8933 * Makefile.in (witness-emacs): Use ../lisp, not $(lispsource).
8934 (.el.elc): Likewise.
8935
89362008-06-21 Miles Bader <miles@gnu.org>
8937
8938 * Makefile.in (../lisp/loaddefs.el): Build autoloads in the lisp
8939 build dir, not the lisp source dir.
8940
89412008-06-21 Stefan Monnier <monnier@iro.umontreal.ca>
8942
8943 * Makefile.in (emacs${EXEEXT}): Link the new emacs to bootstrap-emacs.
8944 (bootstrapclean): Remove.
8945 (.el.elc): New rule.
8946 (PRECOMP): New var.
8947 (../lisp/subdirs.el): Remove.
8948 (bootstrap-emacs${EXEEXT}): Remove subdirs.el and charpro.el dependency.
8949 (witness-emacs): New target.
8950 (mostlyclean): Remove witness-emacs as well.
8951 (../lisp/loaddefs.el, ${lisp} ${SOME_MACHINE_LISP}):
8952 Add witness-emacs dependency.
8953
89542008-06-20 Chong Yidong <cyd@stupidchicken.com>
8955
8956 * font.c (Ffont_face_attributes): Omit key-attribute pairs not
8957 defined by the font.
8958
89592008-06-20 Stefan Monnier <monnier@iro.umontreal.ca>
8960
8961 * Makefile.in (emacs${EXEEXT}): Depend on the machine-specific files.
8962 (bootstrap-clean): New target that keeps TAGS around.
8963 (../lisp/subdirs.el, ../lisp/loaddefs.el): New targets.
8964 (bootstrap-emacs${EXEEXT}): Depend on subdirs.el.
8965
89662008-06-20 Jason Rumney <jasonr@gnu.org>
8967
8968 * w32fns.c, w32term.c, w32term.h, w32gui.h [OLD_FONT]:
8969 Remove obsolete font code.
8970
8971 * w32font.c (font_matches_spec): Use csb bitfield from font signature
8972 to determine language support.
8973
89742008-06-20 Stefan Monnier <monnier@iro.umontreal.ca>
8975
8976 * sysdep.c (cfsetspeed): New fun extracted from the code.
8977 (cfmakeraw): Move before first use.
8978
89792008-06-20 Angelo Graziosi <angelo.graziosi@alice.it> (tiny change)
8980
8981 * sysdep.c (cfmakeraw): Provide fallback implementation.
8982 (serial_configure): Provide fallback implementation of cfsetspeed.
8983
89842008-06-20 Kenichi Handa <handa@m17n.org>
8985
8986 * xftfont.c (xftfont_open): Add FOUNDRY, SPACING, DPI, SCALABLE to
8987 the pattern.
8988
8989 * fontset.c (fontset_from_font): Copy font_spec before changing
8990 the elements.
8991
8992 * xfns.c (x_default_font_parameter): Try "monospace-12" too.
8993
89942008-06-20 Stefan Monnier <monnier@iro.umontreal.ca>
8995
8996 * w32fns.c, xfns.c (x_default_font_parameter): Only set `font-param'
8997 for explicit `font' parameters.
8998
8999 * frame.c (x_set_font): Remove unexplained call to fix inf-recursion.
9000
90012008-06-19 Kenichi Handa <handa@m17n.org>
9002
9003 * frame.c: Include <ctype.h>.
9004 (x_set_font_backend): Allow spacing characters in the X resource
9005 for FontBackend.
9006
90072008-06-19 Stefan Monnier <monnier@iro.umontreal.ca>
9008
9009 * w32fns.c, xfns.c (Qfont_param): New var.
9010 (syms_of_w32fns): Initialize it.
9011 (x_default_font_parameter): Record explicit `font' into
9012 `font-parameter'.
9013
90142008-06-18 Kenichi Handa <handa@m17n.org>
9015
9016 * font.c (font_parse_xlfd): Fix previous change.
9017 (font_parse_fcname): Don't use :fc-unknown-spec.
9018 (FRAME_X_DISPLAY_INFO): Be sure to have at least 1 pixel height.
9019 (Fcopy_font_spec): Preserve the order of elements in FONT_EXTRA.
9020 (font_add_log): Prepend the driver name to the resulting fonts.
9021
9022 * ftfont.c (ftfont_pattern_entity): New arg extra. Caller changed.
9023 (ftfont_spec_pattern): Don't check QCfc_unknown_spec and QCname.
9024 (ftfont_list) [FC_FONTFORMAT]: Include FC_FONTFORMAT in objset.
9025
9026 * xftfont.c (QChinting , QCautohint, QChintstyle, QCrgba)
9027 (QCembolden): New variables.
9028 (syms_of_xftfont): DEFSYM them.
9029 (xftfont_open): Call XftFontMatch. Don't trust the result of
9030 XftTextExtents8 if the pixel_size is less than 5.
9031
90322008-06-18 Andreas Schwab <schwab@suse.de>
9033
9034 * font.c (Ffont_face_attributes): Only define if HAVE_WINDOW_SYSTEM.
9035 (syms_of_font): Only defsubr if HAVE_WINDOW_SYSTEM.
9036
90372008-06-18 Jason Rumney <jasonr@gnu.org>
9038
9039 * w32font.c (w32font_list, w32font_match): Add logging.
9040
9041 * w32uniscribe.c (uniscribe_list, uniscribe_match): Add logging.
9042
90432008-06-17 Chong Yidong <cyd@stupidchicken.com>
9044
9045 * font.c (font_parse_fcname): Store divider characters for
9046 unknown-spec list. For known key symbols, intern using correct
9047 symbol name.
9048
90492008-06-17 Kenichi Handa <handa@m17n.org>
9050
9051 * xfaces.c (realize_default_face): If the frame is not on window
9052 system, set the fontset of face to nil.
9053
90542008-06-17 Naohiro Aota <nao.aota@gmail.com> (tiny change)
9055
9056 * fontset.c (fontset_pattern_regexp): Escape some reg-expr characters.
9057
90582008-06-16 Juanma Barranquero <lekktu@gmail.com>
9059
9060 * dispextern.h (lookup_non_ascii_face, split_font_name_into_vector)
9061 (build_font_name_from_vector): Delete externs.
9062
9063 * xfaces.c (struct font_name): Don't declare.
9064
90652008-06-16 Stefan Monnier <monnier@iro.umontreal.ca>
9066
9067 * font.c (font_unparse_gtkname): Use EQ to compare Lisp_Objects.
9068
90692008-06-16 Chong Yidong <cyd@stupidchicken.com>
9070
9071 * font.c (font_parse_fcname): Fix handling of unknown-spec string.
9072
90732008-06-16 Juanma Barranquero <lekktu@gmail.com>
9074
9075 * font.c (Ffont_spec): Fix usage in docstring.
9076 (Ffont_face_attributes): Doc fix.
9077
90782008-06-16 Andreas Schwab <schwab@suse.de>
9079
9080 * font.c (Ffont_face_attributes): Fix definition.
9081
90822008-06-16 Jason Rumney <jasonr@gnu.org>
9083
9084 * font.h (font_style_symbolic_from_value): Remove.
9085
9086 * font.c (font_style_symbolic_from_value): Remove.
9087 (font_style_symbolic): Revert to pre 2008-06-13 version.
9088
9089 * w32font.c (w32_to_fc_weight): New function.
9090 (w32font_full_name, logfont_to_fcname): Use it.
9091
90922008-06-16 Kenichi Handa <handa@m17n.org>
9093
9094 * font.c (font_check_object): Delete it.
9095 (font_clear_cache): Check if a font-object is alive.
9096 (font_open_entity): Likewise. Set FONT_OBJLST_INDEX of a
9097 font-object to nil.
9098 (font_close_object): Don't check FONT_CLOSE_OBJECT.
9099 (font_at): Don't call font_check_object.
9100 (Ffont_get): Return a symbol for :weight, :slant, and :width.
9101
91022008-06-16 Katsumi Yamaoka <yamaoka@jpl.org>
9103
9104 * puresize.h (BASE_PURESIZE): Increase to 1230000.
9105
91062008-06-16 Chong Yidong <cyd@stupidchicken.com>
9107
9108 * font.c (font_parse_fcname): Correctly parse KEY=VAL values.
9109
91102008-06-15 Chong Yidong <cyd@stupidchicken.com>
9111
9112 * font.c (font_parse_fcname): Only one decimal point.
9113 (font_unparse_fcname): Handle data in family and foundry indices
9114 as symbols, not strings.
9115 (font_unparse_gtkname, Ffont_face_attributes): New functions.
9116
9117 * xfns.c (Fx_select_font): Give GTK font dialog the default font name.
9118
9119 * font.h (font_unparse_gtkname): Add prototype.
9120
91212008-06-15 Naohiro Aota <nao.aota@gmail.com> (tiny change)
9122
9123 * fontset.c (fontset_pattern_regexp): Escape `+' characters in pattern.
9124
91252008-06-15 Andreas Schwab <schwab@suse.de>
9126
9127 * font.c (font_update_drivers): Fix crash when no drivers match.
9128
91292008-06-15 Stefan Monnier <monnier@iro.umontreal.ca>
9130
9131 * xfns.c (Fx_create_frame): internal-border-width default to 0 for Gtk.
9132 * gtkutil.c (xg_create_frame_widgets): Don't set internal_border_width.
9133
91342008-06-14 Stefan Monnier <monnier@iro.umontreal.ca>
9135
9136 * xdisp.c (syms_of_xdisp): Default underline-minimum-offset to 1.
9137
91382008-06-13 Stefan Monnier <monnier@iro.umontreal.ca>
9139
9140 * process.c (Fserial_process_configure, Fprocess_send_eof):
9141 Use EQ to compare Lisp_Objects.
9142
91432008-06-13 Jason Rumney <jasonr@gnu.org>
9144
9145 * w32fns.c (Fw32_select_font): Remove old font API function.
9146
9147 * w32font.c (logfont_to_fcname): New function.
9148 (Fx_select_font): New font dialog function compatible with
9149 GTK/fontconfig version.
9150
9151 * font.c (font_style_symbolic_from_value): New function.
9152 (font_style_symbolic): Use it.
9153
9154 * font.h (font_style_symbolic_from_value): Declare new function.
9155
91562008-06-13 Juanma Barranquero <lekktu@gmail.com>
9157
9158 * font.c (syms_of_font) <font-weight-table, font-slant-table>:
9159 <font-width-table>: Fix typos in docstrings.
9160
91612008-06-13 Daniel Engeler <engeler@gmail.com>
9162
9163 These changes add serial port access.
9164 * process.c: Add HAVE_SERIAL.
9165 (Fdelete_process, Fprocess_status, Fset_process_buffer)
9166 (Fset_process_filter, Fset_process_sentinel, Fprocess_contact)
9167 (list_processes_1, select_wrapper, Fstop_process)
9168 (Fcontinue_process, Fprocess_send_eof, kill_buffer_processes)
9169 (status_notify): Modify to handle serial processes.
9170 [HAVE_SERIAL] (Fserial_process_configure)
9171 [HAVE_SERIAL] (make_serial_process_unwind, Fmake_serial_process):
9172 New functions.
9173 * process.h (struct Lisp_Process): Add `type'.
9174 * sysdep.c [HAVE_TERMIOS] (serial_open, serial_configure):
9175 New functions.
9176 * w32.c (_sys_read_ahead, sys_read, sys_write): Modify to handle
9177 serial ports.
b71ac3dd 9178 (serial_open, serial_configure): New functions.
aac0c6e3
MR
9179 * w32.h: Add FILE_SERIAL.
9180 (struct _child_process): Add ovl_read, ovl_write.
9181
91822008-06-13 Kenichi Handa <handa@m17n.org>
9183
9184 * dispextern.h (enum lface_attribute_index): New member
9185 LFACE_FOUNDRY_INDEX.
9186
9187 * font.c (font_score): Delete arg alternate_families. Check only
9188 weight, slant, width, and size. Ignore the difference of alias
9189 style symbols.
9190 (font_sort_entites): Adjust for the above change. Reflect the
9191 order of font-driver to scores.
9192 (font_list_entities): Don't check alternate_familes here.
9193 (font_clear_prop): Handle foundry.
9194 (font_update_lface): Don't parse "foundry-family" form here.
9195 Handle FONT_FOUNDRY_INDEX.
9196 (font_find_for_lface): Likewise. Handle alternate families here.
9197 If registry is nil, try iso8859-1 and ascii-0.
9198 (font_open_for_lface): Pay attention to size in ENTITY.
9199 (font_open_by_name): Simplify by calling font_load_for_lface.
9200 (free_font_driver_list): Delete it.
9201 (font_update_drivers): Preserve the order of backends.
9202 (syms_of_font): Setting of sort_shift_bits adjusted for the change
9203 of font_score and font_sort_entites.
9204 (font_update_sort_order): Likewise.
9205
9206 * xfaces.c (LFACE_FOUNDRY): New macro.
9207 (check_lface_attrs): Check foundry.
9208 (set_lface_from_font): Don't parse "FOUNDRY-FAMILY" form.
9209 (merge_face_vectors): Check foundry.
9210 (merge_face_ref): Likewise.
9211 (Finternal_set_lisp_face_attribute): Likewise.
9212 (x_update_menu_appearance): Likewise.
9213 (Finternal_get_lisp_face_attribute): Likewise.
9214 (lface_hash): Likewise.
9215 (lface_same_font_attributes_p): Likewise.
9216 (x_supports_face_attributes_p): Likewise.
9217 (tty_supports_face_attributes_p): Likewise.
9218 (Finternal_set_alternative_font_family_alist): Intern strings.
9219 (Finternal_set_alternative_font_registry_alist): Downcase strings.
9220 (realize_default_face): Set LFACE_FOUNDRY (lface).
9221
9222 * xfns.c (Fx_create_frame, x_create_tip_frame): Register X
9223 font-driver at first.
9224
9225 * ftfont.c (ftfont_font_format) [! FC_FONTFORMAT]: Declare "int len;".
9226
92272008-06-12 Emanuele Giaquinta <emanuele.giaquinta@gmail.com> (tiny change)
9228
9229 * lread.c (Fload): Use xfree, not free on saved_doc_string.
9230
92312008-06-12 Jim Meyering <meyering@redhat.com>
9232
9233 Make unexec_free handle NULL the same way free does.
9234 * unexmacosx.c (unexec_free): Ignore a NULL argument.
9235
92362008-06-12 Stefan Monnier <monnier@iro.umontreal.ca>
9237
9238 * character.h (CHAR_TO_BYTE_SAFE): New macro.
9239 * character.c (Fmultibyte_char_to_unibyte): Obey the docstring.
9240 * regex.c (RE_CHAR_TO_UNIBYTE): Use the new macro.
9241 (WEAK_ALIAS): Simplify.
9242 * syntax.c (skip_chars): Don't mark non-byte chars in the fastmap
9243 when searching a unibyte buffer.
9244
92452008-06-12 Chong Yidong <cyd@stupidchicken.com>
9246
9247 * xfns.c (Fx_select_font): Rename from x-font-dialog.
9248
92492008-06-12 Juanma Barranquero <lekktu@gmail.com>
9250
9251 * w32font.c: Include ctype.h.
9252
92532008-06-11 Jason Rumney <jasonr@gnu.org>
9254
9255 * w32font.c (w32font_encode_char): Detect missing glyphs that are
9256 misreported as space.
9257 (add_font_entity_to_list): Support unicode-bmp and unicode-sip
9258 as aliases for registry iso10646-1.
9259
92602008-06-11 Stefan Monnier <monnier@iro.umontreal.ca>
9261
9262 * buffer.c (clone_per_buffer_values): Skip `name'.
9263
92642008-06-11 Chong Yidong <cyd@stupidchicken.com>
9265
9266 * font.c (font_parse_fcname): Fix last change; accept decimal
9267 points in font size.
9268
92692008-06-10 Jason Rumney <jasonr@gnu.org>
9270
9271 * w32uniscribe.c (add_opentype_font_name_to_list):
9272 Skip non unicode fonts.
9273
92742008-06-10 Chong Yidong <cyd@stupidchicken.com>
9275
9276 * xfns.c (Fx_font_dialog): New function.
9277
9278 * gtkutil.c (xg_dialog_response_cb): Rename from
9279 xg_file_response_callback.
9280 (pop_down_dialog): Rename from pop_down_file_dialog.
9281 (xg_get_file_name): Callers changed.
9282 (xg_get_font_name): New function.
9283
9284 * gtkutil.h (xg_get_font_name): Insert prototype.
9285
92862008-06-10 Stefan Monnier <monnier@iro.umontreal.ca>
9287
9288 * xdisp.c (underline_minimum_offset): Rename from xterm.c's
9289 x_underline_minimum_display_offset.
9290 (syms_of_xdisp): Declare it here rather than in xterm.c.
9291 * dispextern.h (underline_minimum_offset): Declare it.
9292 * w32term.c (x_draw_glyph_string): Use it.
9293 * xterm.c (x_underline_minimum_display_offset): Move to xdisp.c.
9294 (syms_of_xterm): Don't declare it any more.
9295 (x_draw_glyph_string): Adjust to the new name.
9296
92972008-06-10 David De La Harpe Golden <david@harpegolden.net> (tiny change)
9298
9299 * xterm.c (x_underline_minimum_display_offset): New var.
9300 (x_draw_glyph_string): Use it.
9301 (syms_of_xterm): Declare it.
9302
93032008-06-10 Chong Yidong <cyd@stupidchicken.com>
9304
9305 * font.c (font_parse_fcname): Accept GTK-style font names too.
9306
93072008-06-10 Stefan Monnier <monnier@iro.umontreal.ca>
9308
9309 * dired.c (file_name_completion): Don't return t if the match is exact
9310 but with different capitalization.
9311 * minibuf.c (Ftry_completion): Simplify.
9312
9313 * window.c (Vwindow_point_insertion_type): New var.
9314 (set_window_buffer): Use it.
9315 (syms_of_window): Init and export it to Lisp.
9316
93172008-06-10 Kenichi Handa <handa@m17n.org>
9318
9319 * font.h (font_intern_prop): Prototype adjusted.
9320
9321 * font.c (font_intern_prop): New arg force_symbol.
9322 (font_parse_xlfd, font_parse_fcname, font_parse_family_registry):
9323 Adjust for the change of font_intern_prop.
9324
9325 * ftfont.c (ftfont_pattern_entity):
9326 * w32font.c (add_font_name_to_list, w32_enumfont_pattern_entity)
9327 (w32_registry):
9328 * w32uniscribe.c (add_opentype_font_name_to_list): Adjust for
9329 the change of font_intern_prop.
9330
93312008-06-09 Juanma Barranquero <lekktu@gmail.com>
9332
9333 * w32menu.c (digest_single_submenu): Declare extern.
9334
93352008-06-09 Jason Rumney <jasonr@gnu.org>
9336
9337 * w32term.c (x_make_frame_visible): Use alternate restore flags.
9338
9339 * w32menu.c (Fx_popup_menu): Unwind protect while building menu.
9340 (parse_single_submenu): Remove.
9341 (digest_single_submenu): Remove.
9342 (syms_of_w32menu): Don't initialise variables that have moved
9343 to menu.c.
9344 (set_frame_menubar): Sync with version in xmenu.c.
9345 (w32_menu_show): Sync with xmenu_show in xmenu.c.
9346
9347 * menu.c (single_keymap_panes, push_menu_pane, push_menu_item):
9348 Make static again.
9349
93502008-06-09 Jason Rumney <jasonr@gnu.org>
9351
9352 Changes to w32 files related to the move of common menu code
9353 to menu.c on 2008-06-08 by Chong Yidong.
9354
9355 * menu.c [HAVE_NTGUI]: Include w32term.h, move widget related
9356 defs to w32gui.h.
9357 (single_keymap_panes, push_menu_item, push_menu_pane):
9358 Make globally visible.
9359
9360 * w32menu.c (enum button_type, widget_value, local_heap, local_alloc)
9361 (local_free, malloc_widget_value, free_widget_value)
9362 (MENU_ITEMS_ITEM_NAME, MENU_ITEMS_ITEM_ENABLE, MENU_ITEMS_ITEM_VALUE)
9363 (MENU_ITEMS_ITEM_EQUIV_KEY, MENU_ITEMS_ITEM_DEFINITION)
9364 (MENU_ITEMS_ITEM_TYPE, MENU_ITEMS_ITEM_SELECTED, MENU_ITEMS_ITEM_HELP)
9365 (MENU_ITEMS_ITEM_LENGTH, enum menu_item_idx): Remove defs.
9366 (menu_items, menu_items_allocated, menu_items_used)
9367 (menu_items_n_panes, menu_items_submenu_depth): Remove global vars.
9368 (init_menu_items, finish_menu_items, discard_menu_items)
9369 (grow_menu_items, push_submenu_start, push_submenu_end)
9370 (push_left_right_boundary, push_menu_pane, push_menu_item)
9371 (keymap_panes, single_keymap_panes, list_of_panes, list_of_items)
9372 (free_menubar_widget_tree_value, parse_single_submenu)
9373 (update_submenu_strings): Remove functions.
9374 (xmalloc_widget_value): Remove and declare extern.
9375
9376 * makefile.w32-in ($(SRC)/menu.$(O)): New target.
9377 (OBJ1): Build it.
9378
9379 * w32gui.h (widget_value, XtPointer, Boolean, enum button_type)
9380 (local_heap, local_alloc, local_free, malloc_widget_value)
9381 (free_widget_value): Define here.
9382
93832008-06-09 Kenichi Handa <handa@m17n.org>
9384
9385 * font.h (Qascii_0): Extern it.
9386
9387 * font.c (Qascii_0): New variable.
9388 (syms_of_font): DEFSYM it.
9389 (font_open_by_name): If the registry "iso8859-1" fails, try also
9390 "ascii-0".
9391
9392 * ftfont.c (ftfont_spec_pattern): Accept the registry `ascii-0'.
9393
93942008-06-08 Kenichi Handa <handa@m17n.org>
9395
9396 * .gdbinit (xfont): New command.
9397
93982008-06-08 Andreas Schwab <schwab@suse.de>
9399
9400 * menu.c [HAVE_X_WINDOWS]: Include "xterm.h".
9401 * Makefile.in (menu.o): Update dependencies.
9402
9403 * Makefile.in (obj): Always add menu.o.
9404 * emacs.c (main): Always call syms_of_menu.
9405 * keyboard.h: Remove extra #ifdef HAVE_X_WINDOW.
9406
94072008-06-08 Chong Yidong <cyd@stupidchicken.com>
9408
9409 * Makefile.in: Compile menu.c.
9410
9411 * lisp.h: Declare syms_of_menu.
9412
9413 * emacs.c (main): Call syms_of_menu.
9414
9415 * keyboard.h: Relocate platform-independent menu definitions from
9416 xmenu.c.
9417
9418 * menu.c: New file. Relocate platform-independent menu
9419 definitions from xmenu.c. Suggested by Adrian Robert.
9420
9421 * xmenu.c: Remove platform-independent menu definitions.
9422 (menu_items menu_items_inuse, menu_items_allocated)
9423 (menu_items_used, menu_items_n_panes)
9424 (menu_items_submenu_depth): Move to keyboard.h.
9425 (init_menu_items, finish_menu_items, unuse_menu_items)
9426 (discard_menu_items, restore_menu_items, save_menu_items)
9427 (grow_menu_items, push_submenu_start, push_submenu_end)
9428 (push_left_right_boundary, push_menu_pane, push_menu_item)
9429 (keymap_panes, single_keymap_panes, single_menu_item)
9430 (list_of_panes, list_of_items, find_and_call_menu_selection)
9431 (xmalloc_widget_value, free_menubar_widget_value_tree)
9432 (parse_single_submenu, digest_single_submenu)
9433 (update_submenu_strings): Move to menu.c.
9434
94352008-06-07 Stefan Monnier <monnier@iro.umontreal.ca>
9436
9437 * dispnew.c (Flast_nonminibuf_frame): Handle the NULL case.
9438
94392008-06-06 Miles Bader <miles@gnu.org>
9440
9441 * xdisp.c (x_produce_glyphs): Calculate tab width based on current
9442 face, not frame default.
9443
94442008-06-05 Martin Rudalics <rudalics@gmx.at>
9445
9446 * window.c (pop_up_windows, pop_up_frames)
9447 (display_buffer_reuse_frames, Vpop_up_frame_function)
9448 (Vdisplay_buffer_function, Veven_window_heights)
9449 (Vspecial_display_buffer_names, Vspecial_display_regexps)
9450 (Vspecial_display_function, Vsame_window_buffer_names)
9451 (Vsame_window_regexps, split_height_threshold)
9452 (Vsplit_window_preferred_function): Move those vars to window.el.
9453 (display_buffer_1, Fspecial_display_p, Fsame_window_p)
9454 (Fdisplay_buffer): Move those functions to window.el.
9455 (syms_of_window): Remove corresponding declarations.
9456 (display_buffer): New function.
9457 (temp_output_buffer_show, Fother_window_for_scrolling): Use it.
9458 * dispnew.c (Flast_nonminibuf_frame): New function.
9459 * buffer.c (Fpop_to_buffer): Move to window.el.
9460
94612008-06-05 Stefan Monnier <monnier@iro.umontreal.ca>
9462
9463 * data.c (set_internal): Fix up call to let_shadows_buffer_binding_p.
9464
94652008-06-05 Kenichi Handa <handa@m17n.org>
9466
9467 * coding.c (detect_coding): Fix previous change.
9468 (detect_coding_system): Likewise.
9469
94702008-06-05 Stefan Monnier <monnier@iro.umontreal.ca>
9471
9472 * character.h (MAKE_CHAR_MULTIBYTE): Check the arg is a (uni)byte.
9473
9474 * keymap.c (Vminibuffer_local_filename_must_match_map):
9475 Rename from Vminibuffer_local_must_match_filename_map.
9476 (syms_of_keymap):
9477 * minibuf.c (Fcompleting_read): Adjust accordingly.
9478 * commands.h: Rename declaration as well.
9479
94802008-06-05 Kenichi Handa <handa@m17n.org>
9481
9482 * font.c (Ffont_spec): Don't use font_parse_family_registry for
9483 family name.
9484 (Ffont_put): Likewise.
9485
9486 * fontset.c (fontset_find_font): Call font_open_for_lface with the
9487 current font-spec.
9488
9489 * xfont.c (xfont_list): Don't set registry to iso8859-1 even if it
9490 is unspecified.
9491
9492 * xfaces.c (realize_x_face): If the font-related face attributes
9493 are the same as those of default face, realize a new fontset from
9494 default->fontset.
9495 (Fx_family_fonts): Use font_parse_family_registry instead of Ffont_put.
9496
94972008-06-05 Stefan Monnier <monnier@iro.umontreal.ca>
9498
9499 * xdisp.c (move_it_in_display_line_to): Improve the type of its args.
9500 (move_it_in_display_line): New wrapper.
9501
9502 * window.c (window_scroll_pixel_based_preserve_x)
9503 (window_scroll_preserve_hpos, window_scroll_preserve_vpos): New vars.
9504 (window_scroll_pixel_based, window_scroll_line_based):
9505 Use them to preserve column positions.
9506 (syms_of_window): Initialize them.
9507
9508 * indent.c (Fvertical_motion): Extend first arg to allow passing an
9509 (HPOS . VPOS) pair.
9510
9511 * dispextern.h (move_it_in_display_line): Declare.
9512
95132008-06-05 Juanma Barranquero <lekktu@gmail.com>
9514
9515 * window.c (Fwindow_parameter): Return VALUE, not (PARAMETER . VALUE).
9516 (Fwindow_parameters): Return copy of parameter alist. Doc fix.
9517 (Fset_window_parameter): Return VALUE, not parameter alist. Doc fix.
9518
95192008-06-04 Juanma Barranquero <lekktu@gmail.com>
9520
9521 * window.c (Fset_window_parameter): Doc fix.
9522 (Fwindow_parameters, Fwindow_parameter): Remove redundant check.
9523
95242008-06-04 Joakim Verona <joakim@verona.se>
9525
9526 * window.h (struct window): Add new member window_parameters.
9527
9528 * window.c (Fwindow_parameters, Fwindow_parameter)
9529 (Fset_window_parameter): New defuns.
9530 (syms_of_window): Defsubr the new defuns.
9531 (make_window): Initialize window_parameters to nil.
9532
95332008-06-04 John Paul Wallington <jpw@pobox.com>
9534
9535 * eval.c (Fdefmacro): Doc fix.
9536
95372008-06-04 Kenichi Handa <handa@m17n.org>
9538
9539 * coding.c (detect_coding): Fix handling of coding->head_ascii.
9540 Be sure to call setup_coding_system when we find a proper coding system.
9541 (detect_coding_system): Fix handling of coding->head_ascii.
9542
95432008-06-03 Andreas Schwab <schwab@suse.de>
9544
9545 * font.c (font_prop_validate_spacing): Fix last change.
9546
95472008-06-03 Kenichi Handa <handa@m17n.org>
9548
9549 * font.c (font_prop_validate_spacing): Handle uppercase symbols.
9550 (font_parse_fcname): Fix handling of unknown key.
9551
9552 * xfont.c (xfont_list): Try an alias.
9553
9554 * charset.c (char_charset): Return NULL if the arg charset_list is
9555 specified and C doesn't belong to any of them.
9556
95572008-06-02 Chip Coldwell <coldwell@redhat.com>
9558
9559 * font.c (font_pixel_size): Don't take cdr of an integer.
9560
95612008-06-02 Jim Meyering <meyering@redhat.com>
9562
9563 Make "xfree (NULL)" a no-op; remove useless if-before-xfree.
9564 * alloc.c (xfree): Return right away for a NULL arg.
9565 * lread.c (nosuffix): Remove now-useless if-before-xfree tests.
9566 * gtkutil.c (xg_gtk_scroll_destroy): Likewise.
9567 * mac.c (create_apple_event_from_event_ref): Likewise.
9568 (create_apple_event_from_drag_ref, cfstring_create_normalized):
9569 Likewise.
9570 * doprnt.c (doprnt1): Likewise.
9571 * frame.c (frame): Likewise.
9572 * keyboard.c (wipe_kboard): Likewise.
9573 * macterm.c (x_free_frame_resources, xlfdpat_destroy, XFreePixmap)
9574 (init_font_name_table, mac_unload_font, x_delete_display): Likewise.
9575 * term.c (tty_default_color_capabilities, maybe_fatal)
9576 (delete_tty): Likewise.
9577 * w16select.c (string): Likewise.
9578 * w32.c (w32_get_resource, SET_ENV_BUF_SIZE): Likewise.
9579 * w32bdf.c (w32_free_bdf_font): Likewise.
9580 * w32fns.c (w32_unload_font): Likewise.
9581 * w32font.c (w32font_close): Likewise.
9582 * window.c (size_window): Likewise.
9583 * xselect.c (receive_incremental_selection): Likewise.
9584 * xterm.c (x_free_frame_resources, x_delete_display): Likewise.
9585 * mactoolbox.c (create_apple_event_from_drag_ref): Likewise.
9586 * w32.c (stat): Likewise.
9587
9588 Remove useless if-before-free tests.
9589 * editfns.c (Fset_time_zone_rule): Likewise.
9590 * lread.c (nosuffix): Likewise.
9591 * ralloc.c (get_bloc): Likewise.
9592 * regex.c (reg_free): Likewise.
9593 * xftfont.c (xftfont_open, xftfont_close): Likewise.
9594 * xrdb.c (get_user_app, get_environ_db, x_load_resources): Likewise.
9595 * xsmfns.c (smc_save_yourself_CB): Likewise.
9596
95972008-06-02 Kenichi Handa <handa@m17n.org>
9598
9599 * font.c (font_find_for_lface): Handle float font size.
9600 (font_open_for_lface): Likewise.
9601
9602 * xfaces.c (x_supports_face_attributes_p): Check face->font before
9603 comparing the properties.
9604
96052008-06-01 Jason Rumney <jasonr@gnu.org>
9606
9607 * w32font.c (w32_enumfont_pattern_entity): Use requested registry.
9608 Treat iso10646-1 and Windows DEFAULT_CHARSET specially.
9609 Duplicate iso8859-1 fonts as iso10646-1 if no registry specified.
9610 Don't add empty script list.
9611 (w32_registry): Only map DEFAULT_CHARSET to iso10646-1 here.
9612
96132008-06-01 Dan Nicolaescu <dann@ics.uci.edu>
9614
9615 * Makefile.in (dot, dotdot): Remove, update users.
9616 ".." has been used elsewhere in the file for a long time.
9617 (LIBXT_STATIC): Remove conditional based on unused variable.
9618
96192008-06-01 Miles Bader <miles@gnu.org>
9620
9621 * xfaces.c (Vface_remapping_alist): New variable.
9622 (syms_of_xfaces): Initialize it.
9623 (enum named_merge_point_kind): New type.
9624 (struct named_merge_point): Add `named_merge_point_kind' field.
9625 (push_named_merge_point): Make cycle detection respect different
9626 named-merge-point kinds.
9627 (lface_from_face_name_no_resolve): Rename from `lface_from_face_name'.
9628 Remove face-name alias resolution.
9629 (lface_from_face_name): New definition using
9630 `lface_from_face_name_no_resolve'.
9631 (get_lface_attributes_no_remap): Rename from `get_lface_attributes'.
9632 Call lface_from_face_name_no_resolve instead of lface_from_face_name.
9633 (get_lface_attributes): New definition that layers face-remapping on
9634 top of get_lface_attributes_no_remap. New arg `named_merge_points'.
9635 (lookup_basic_face): New function.
9636 (lookup_derived_face): Pass new last arg to `get_lface_attributes'.
9637 (realize_named_face): Call `get_lface_attributes_no_remap' instead of
9638 `get_lface_attributes'.
9639 (face_at_buffer_position): Use `lookup_basic_face' to lookup
9640 DEFAULT_FACE_ID if necessary. When optimizing the default-face case,
9641 return default_face's face-id instead of the constant DEFAULT_FACE_ID.
9642
9643 * xdisp.c (init_iterator): Pass base_face_id through
9644 `lookup_basic_face' when we actually use it as a face-id.
9645 (handle_single_display_prop): Use `lookup_basic_face' to lookup
9646 DEFAULT_FACE_ID.
9647
9648 * fontset.c (Finternal_char_font): Use `lookup_basic_face' to
9649 lookup the initial face-id.
9650
9651 * dispextern.h (lookup_basic_face, Vface_remapping_alist): New decls.
9652
96532008-06-01 Juanma Barranquero <lekktu@gmail.com>
9654
9655 * textprop.c (syms_of_textprop) <text-property-default-nonsticky>:
9656 (Fremove_text_properties): Fix typos in docstrings.
9657
96582008-05-31 Kenichi Handa <handa@m17n.org>
9659
9660 * font.c (font_list_entities): Fix the car part of data to be
9661 stored in the cache.
9662
9663 * ftfont.c (ftfont_font_format): Don't use strcasestr.
9664
96652008-05-30 Stefan Monnier <monnier@iro.umontreal.ca>
9666
9667 * chartab.c (Foptimize_char_table, optimize_sub_char_table):
9668 Add a `test' argument so another predicate than `equal' can be used.
9669 (map_sub_char_table): Use `eq' rather than `equal' to merge ranges.
9670 (map_char_table): Remove unused vars `c' and `i'.
9671 * lisp.h (Foptimize_char_table): Adjust declaration.
9672 * charset.c (Fclear_charset_maps): Adjust call to Foptimize_char_table.
9673
96742008-05-30 Kenichi Handa <handa@m17n.org>
9675
9676 * font.c (Ffont_info): Define only if HAVE_WINDOW_SYSTEM is defined.
9677 (syms_of_font): Defsubr Sfont_info only if HAVE_WINDOW_SYSTEM is
9678 defined.
9679
96802008-05-30 Stefan Monnier <monnier@iro.umontreal.ca>
9681
9682 * data.c (Fmake_variable_buffer_local, Fmake_local_variable)
9683 (Fmake_variable_frame_local): Disallow mixing buffer-local and
9684 frame-local settings for the same variable.
9685
96862008-05-30 Kenichi Handa <handa@m17n.org>
9687
9688 * fontset.c (Ffont_info): Move to font.c.
9689 (syms_of_fontset): Delete defsubr of Sfont_info.
9690
9691 * font.c (font_style_to_value, font_score): Delete casting of the
9692 args to xstcasecmp.
9693 (register_font_driver): Increment num_font_drivers only when
9694 registering the driver globally.
9695 (Ffont_info): Move from fontset.c. Handle a font object too.
9696 (syms_of_font): Defsubr Sfont_info.
9697
96982008-05-29 Kenichi Handa <handa@m17n.org>
9699
9700 * coding.h (enum define_coding_utf8_arg_index): New enum.
9701 (enum coding_attr_index): Change coding_attr_utf_16_bom to
9702 coding_attr_utf_bom.
9703 (enum utf_bom_type): Rename from utf_16_bom_type.
9704 (struct utf_16_spec): Adjust for the above change.
9705 (struct coding_system): Add utf_8_bom in `spec' union.
9706
9707 * coding.c (CODING_UTF_8_BOM): New macro.
9708 (enum coding_category): Delete coding_category_utf_8, add
9709 coding_category_utf_8_auto, coding_category_utf_8_nosig, and
9710 coding_category_utf_8_sig.
9711 (CATEGORY_MASK_UTF_8): Delete it.
9712 (CATEGORY_MASK_UTF_8_AUTO, CATEGORY_MASK_UTF_8_NOSIG)
9713 (CATEGORY_MASK_UTF_8_SIG): New macros.
9714 (CATEGORY_MASK_ANY): Delete CATEGORY_MASK_UTF_8, add
9715 CATEGORY_MASK_UTF_8_AUTO, CATEGORY_MASK_UTF_8_NOSIG, and
9716 CATEGORY_MASK_UTF_8_SIG.
9717 (CATEGORY_MASK_UTF_8): New macro.
9718 (UTF_BOM, UTF_8_BOM_1, UTF_8_BOM_2, UTF_8_BOM_3): New macros.
9719 (detect_coding_utf_8): Check BOM.
9720 (decode_coding_utf_8, encode_coding_utf_8): Handle BOM.
9721 (decode_coding_utf_16): Adjust for the change of enum utf_bom_type.
9722 (encode_coding_utf_16): Likewise.
9723 (setup_coding_system): Likewise. Set CODING_UTF_8_BOM (coding).
9724 (detect_coding, detect_coding_system): Handle utf-8-auto.
9725 (Fdefine_coding_system_internal): Handle `bom' property for utf-8.
9726 (syms_of_coding): Fix setting up of Vcoding_category_table.
9727
97282008-05-29 Stefan Monnier <monnier@iro.umontreal.ca>
9729
9730 * process.c (Faccept_process_output): If `millisec' is non-nil,
9731 `seconds' default to 0.
9732 (wait_reading_process_output): Also return non-nil if we read output
9733 from a non-running process.
9734
97352008-05-29 Jason Rumney <jasonr@gnu.org>
9736
9737 * w32font.c (w32font_open_internal): Prefer truetype fonts unless
9738 `raster' specified.
9739 (add_font_entity_to_list): Allow non-opentype truetype fonts back
9740 in the uniscribe backend, but disallow any font that has no
9741 unicode subrange support.
9742
97432008-05-29 Juanma Barranquero <lekktu@gmail.com>
9744
9745 * xfaces.c (Fx_list_fonts, Finternal_copy_lisp_face):
9746 Fix typos in docstrings.
9747
97482008-05-29 Kenichi Handa <handa@m17n.org>
9749
9750 * xfaces.c (Fx_list_fonts): Make it return a list of font names.
9751 (Fx_family_fonts): Set frame correctly.
9752
97532008-05-28 Jason Rumney <jasonr@gnu.org>
9754
9755 * w32term.c (x_draw_glyph_string): Use clipmask if specified.
9756
97572008-05-28 Stefan Monnier <monnier@iro.umontreal.ca>
9758
9759 * fileio.c (Fwrite_region): Delay the defaulting to beg&z to after
9760 calling build_annotations.
9761
97622008-05-28 Juanma Barranquero <lekktu@gmail.com>
9763
9764 * coding.c (Fdecode_coding_region, Fencode_coding_region)
9765 (Fencode_coding_string):
9766 (syms_of_coding) <coding-system-for-read, coding-system-for-write>:
9767 <latin-extra-code-table>: Fix typos in docstrings.
9768 (syms_of_coding) <coding-system-alist>: Doc fix.
9769 (syms_of_coding) <translation-table-for-input>: Reflow docstring.
9770
97712008-05-28 Kenichi Handa <handa@m17n.org>
9772
9773 * fontset.c (Ffont_info): Don't call font_close_object.
9774
9775 * font.c (font_parse_family_registry): Use Ffont_put to validate
9776 foundry and family.
9777 (font_delete_unmatched): Don't check spacing.
9778 (font_list_entities): Add spacing to the spec to list fonts.
9779
9780 * ftfont.c (ftfont_spec_pattern): Don't set FC_SPACING to pattern.
9781 (ftfont_list): Check spacing here. Don't include FC_CHARSET in objset.
9782
9783 * coding.c (encode_coding_raw_text): Fix previous change.
9784 (encode_coding_object): When the dst_object is a buffer and is
9785 different from src_object, move gap to PT.
9786
97872008-05-27 Chong Yidong <cyd@stupidchicken.com>
9788
9789 * xterm.c (x_draw_glyph_string): If a clipmask is specified, use it.
9790
97912008-05-27 Stefan Monnier <monnier@iro.umontreal.ca>
9792
9793 * coding.c (encode_coding_raw_text): Set coding->produced_char for
9794 all branches. Compute it differently.
9795
9796 * xdisp.c [!HAVE_WINDOW_SYSTEM]: Include font.h for --without-x.
9797
97982008-05-27 Juanma Barranquero <lekktu@gmail.com>
9799
9800 * w32font.c (compute_metrics): Rewrite an "else { if () ... else ... }"
9801 into "else if () ... else ...".
9802
98032008-05-27 Jason Rumney <jasonr@gnu.org>
9804
9805 * w32font.c (w32font_open_internal): Determine if glyph indices
9806 are likely to work here.
9807
98082008-05-27 Chong Yidong <cyd@stupidchicken.com>
9809
9810 * xdisp.c (draw_glyphs): If mouse-highlighting is on, attempt to
9811 draw overlap glyphs with appropriate highlighting.
9812
98132008-05-27 Kenichi Handa <handa@m17n.org>
9814
9815 * xfont.c (xfont_open): Fix calculation of font->average_width.
9816
98172008-05-27 Stefan Monnier <monnier@iro.umontreal.ca>
9818
9819 * casefiddle.c (casify_object): Try to guess better whether the
9820 argument is a byte or a char.
9821
98222008-05-26 Andreas Schwab <schwab@suse.de>
9823
9824 * xselect.c (x_reply_selection_request): Properly handle format == 32.
9825 Always send multiples of format size.
9826
9827 * xterm.c (x_set_frame_alpha): Fix type mismatch.
9828
98292008-05-26 Jason Rumney <jasonr@gnu.org>
9830
9831 * w32font.c (w32font_text_extents): Zero whole metrics struct first.
9832 (compute_metrics): Don't set failure if we just cleared the cache.
9833 (w32_weight_table): Remove unused variable.
9834 (w32_enumfont_pattern_entity): Use FONT_SPACING_CHARCELL for
9835 backwards compatibility.
9836
98372008-05-25 Kenichi Handa <handa@m17n.org>
9838
9839 * w32term.c (x_draw_glyph_string):
9840 * xterm.c (x_draw_glyph_string): Fix calculation of underline position.
9841
9842 * xfaces.c: Delete unused function prototypes.
9843 (xstrlwr, font_frame): Delete them.
9844 (clear_face_cache): Delete unused variable.
9845
9846 * xftfont.c (xftfont_open): Delete unused variable.
9847 If underline_thickness is not 1, adjust underline_position.
9848
9849 * ftxfont.c (ftxfont_open): Delete unused variable.
9850
9851 * fontset.c (face_for_char): Optimize for the case of no charset
9852 property.
9853
9854 * font.c (LGSTRING_HEADER_SIZE, LGSTRING_GLYPH_SIZE)
9855 (check_gstring, check_otf_features, otf_list, otf_tag_symbol)
9856 (otf_open, font_otf_capability, generate_otf_features)
9857 (font_otf_DeviceTable, font_otf_ValueRecord, font_otf_Anchor):
9858 Comment out by surrounding "#if 0" and "#endif" for the moment.
9859 (Ffont_drive_otf, Ffont_otf_alternates): Likewise.
9860 (syms_of_font): Codes for accessing above commented out.
9861
98622008-05-24 Eli Zaretskii <eliz@gnu.org>
9863
9864 * w32proc.c: Include dispextern.h.
9865
9866 * w32.c: Include dispextern.h.
9867
98682008-05-23 Juanma Barranquero <lekktu@gmail.com>
9869
9870 * charset.c (Fencode_char, Fsplit_char): Doc fixes.
9871 (Fget_unused_iso_final_char, Fdecode_char, Fiso_charset):
9872 Fix typos in docstrings.
9873
98742008-05-23 Jason Rumney <jasonr@gnu.org>
9875
9876 * xsmfns.c: Remove includes that are already included by config.h.
9877
98782008-05-23 Kenichi Handa <handa@m17n.org>
9879
9880 * charset.c (Qemacs, charset_emacs): New variables.
9881 (char_charset): Fix for non-Unicode characters.
9882 (syms_of_charset): Define charset_emacs.
9883
9884 * w32term.c (x_draw_glyph_string): Be sure to update
9885 s->underline_thickness and s->underline_position. Be sure to draw
9886 underline within the current line area.
9887
9888 * xterm.c (x_draw_glyph_string): Be sure to update
9889 s->underline_thickness and s->underline_position. Be sure to draw
9890 underline within the current line area.
9891
9892 * fontset.c: Delete unused variables and add casting for char *
9893 throughout the file.
9894 (fontset_font): Try the fallback fonts of the current fontset
9895 before consulting the default fontset.
9896
9897 * ftfont.c (ftfont_spec_pattern): Free charset if necessary.
9898
9899 * xfont.c (xfont_list_pattern): Free names returned from XListFonts.
9900
99012008-05-22 Jason Rumney <jasonr@gnu.org>
9902
9903 * font.c: Don't include strings.h.
9904
9905 * dispextern.h, xfaces.c (xstrcasecmp): Rename from xstricmp.
9906
9907 * dosfns.c, fileio.c, font.c, fontset.c, image.c, macfns.c:
9908 * macterm.c, process.c, w32.c, w32fns.c, w32proc.c, xfaces.c:
9909 * xfns.c, xfont.c: All callers of stricmp and strcasecmp changed
9910 to call xstrcasecmp.
9911
9912 * xfont.c (xfont_list_pattern, compare_font_names): Use xstrcasecmp.
9913
9914 * fontset.c (fs_query_fontset): Use xstrcasecmp.
9915
9916 * font.c (font_style_to_value, font_score): Use xstrcasecmp.
9917
9918 * dosfns.c (msdos_stdcolor_idx): Use xstrcasecmp.
9919
99202008-05-22 Kenichi Handa <handa@m17n.org>
9921
9922 * puresize.h (BASE_PURESIZE): Increase to 1220000.
9923
9924 * font.c (font_prop_validate_style): Adjust for the format
9925 change of font_style_table.
9926
9927 * w32font.c (w32font_open_internal): Call Ffont_xlfd_name with
9928 two args.
9929
9930 * xfaces.c (x_update_menu_appearance): Call Ffont_xlfd_name with
9931 two args.
9932
99332008-05-22 Stefan Monnier <monnier@iro.umontreal.ca>
9934
9935 * minibuf.c (keys_of_minibuf): Delete.
9936 * lisp.h (keys_of_minibuf): Delete.
9937 * emacs.c (main): Don't call keys_of_minibuf.
9938
99392008-05-22 Kenichi Handa <handa@m17n.org>
9940
9941 * ftfont.c (ftfont_resolve_generic_family): Rename from
9942 ftfont_list_generic_family. Return a single family for each
9943 generic family.
9944 (ftfont_spec_pattern): Add FC_FAMILY to pattern.
9945 (ftfont_list): Adjust for the change of ftfont_resolve_generic_family.
9946 Call font_add_log.
9947 (ftfont_match): Call font_add_log.
9948
9949 * font.h (Ffont_xlfd_name): EXFUN adjusted.
9950 (FONT_DEBUG): Define it.
9951 (font_add_log): Extern it.
9952 (font_assert): Rename from xassert.
9953
9954 * xfont.c (xfont_get_pcm): Change xassert to font_assert.
9955 (xfont_list_family): Call font_add_log.
9956 (xfont_match): Likewise.
9957 (memq_no_quit): Delete.
9958
9959 * fontset.c (fontset_from_font, Ffontset_info): Add the 2nd arg in
9960 call of Ffont_xlfd_name.
9961
9962 * xfaces.c (struct table_entry, slant_table, weight_table)
9963 (swidth_table): Move to font.c.
9964
9965 * font.c: Checking of FONT_DEBUG is moved to font.h. All calls of
9966 xassert are changed to font_assert. Delete many unused variables.
9967 (Vfont_weight_table, Vfont_slant_table, Vfont_width_table):
9968 New variables.
9969 (struct table_entry): Move from xfaces.c and modified.
9970 (weight_table, slant_table, width_table): Move from xfaces.c and
9971 contents adjusted for the change of struct table_entry.
9972 (font_style_to_value, font_style_symbolic): Adjust for the
9973 format change of font_style_table.
9974 (font_parse_family_registry): Don't overwrite existing foundry and
9975 family of font_spec.
9976 (font_score): Fix calculation of diff for sizes.
9977 (font_sort_entites): Call font_add_log.
9978 (font_delete_unmatched): Return a newly created list.
9979 (font_list_entities): Fix previous change. Call font_add_log.
9980 (font_matching_entity, font_open_entity, font_close_entity):
9981 Call font_add_log.
9982 (Ffont_xlfd_name): New arg FOLD-WILDCARDS.
9983 (Finternal_set_font_style_table): Delete.
9984 (BUILD_STYLE_TABLE): New macro.
9985 (build_style_table): New function.
9986 (Vfont_log, font_log_env_checked): New variables.
9987 (font_add_log): New function.
9988 (syms_of_font): Delete defsubr Sinternal_set_font_style_table.
9989 Declare Lisp variables "font-weight-table", "font-slant-table",
9990 "font-width-table", and "font-log". Initialize font_style_table.
9991
99922008-05-21 Dan Nicolaescu <dann@ics.uci.edu>
9993
9994 * xterm.c (x_set_frame_alpha): Move declarations before statements.
9995
99962008-05-21 Seiji Zenitani <zenitani@mac.com>
9997 Ryo Yoshitake <ryo@shiftmode.net>
9998
9999 * frame.c (Qalpha): Add a new frame parameter `alpha'.
10000 (Vframe_alpha_lower_limit): New variable.
10001 (x_set_alpha): New function.
10002
10003 * frame.h (Qalpha, Vframe_parameter_lower_limit): Export them.
10004
10005 * xfns.c (x-create-frame, Qalpha):
10006 Initialize the frame parameter `alpha'.
10007 * xterm.c (OPAQUE, OPACITY): New.
10008 (x_set_frame_alpha): New function.
10009 (frame_highlight, frame_unhighlight): Call x_set_frame_alpha.
10010
10011 * macfns.c (mac_frame_parm_handlers): A null handler for x_set_alpha.
10012 * w32fns.c (w32_frame_parm_handlers): Likewise.
10013
100142008-05-20 Jason Rumney <jasonr@gnu.org>
10015
10016 * w32font.c (add_font_entity_to_list): Don't add non-opentype
10017 truetype fonts to opentype list.
10018
100192008-05-20 Juanma Barranquero <lekktu@gmail.com>
10020
10021 * fontset.c (Ffontset_info): Doc fix.
10022 (syms_of_fontset) <font-encoding-charset-alist, use-default-ascent>:
10023 <ignore-relative-composition>: Fix typos in docstrings.
10024
10025 * font.c (syms-of-font) <font-encoding-alist>:
10026 (Ffontp, Ffont_make_gstring): Fix typos in docstrings.
10027 (Flist_fonts, Ffont_family_list, Ffont_fill_gstring, Fquery_font)
10028 (Ffont_otf_alternates): Doc fixes.
10029
100302008-05-20 Kenichi Handa <handa@m17n.org>
10031
10032 * Makefile.in (FONTSRC): Delete it. Change all $(FONTSRC) to
10033 font.h through out the file.
10034 (FONT_DRIVERS): Rename from FONTOBJ.
10035 (obj): Change $(FONTOBJ) to $(FONT_DRIVERS). Add font.o.
10036 (SOME_MACHINE_OBJECTS): Change $(FONTOBJ) to $(FONT_DRIVERS).
10037
10038 * emacs.c (main): Call syms_of_font unconditionally.
10039
10040 * font.h (find_font_encoding): Extern it.
10041
10042 * font.c (Vfont_encoding_alist, find_font_encoding): Move from
10043 fontset.c.
10044 (font_pixel_size)[! HAVE_WINDOW_SYSTEM]: Return 1.
10045 (font_open_entity): Update FRAME_X_DISPLAY_INFO (f)->n_fonts,
10046 FRAME_SMALLEST_CHAR_WIDTH (f), and FRAME_SMALLEST_FONT_HEIGHT (f)
10047 only when HAVE_WINDOW_SYSTEM is defined.
10048 (font_close_object): Update FRAME_X_DISPLAY_INFO (f)->n_fonts only
10049 when HAVE_WINDOW_SYSTEM is defined.
10050
10051 * fontset.c (Vfont_encoding_alist, find_font_encoding): Move to font.c.
10052 (syms_of_fontset): Move declaration of font-encoding-alist to font.c.
10053
10054 * xfaces.c: Include font.h unconditionally.
10055 (merge_face_ref, merge_face_vectors)
10056 (Finternal_set_lisp_face_attribute): Cancel the previous change.
10057
100582008-05-20 Stefan Monnier <monnier@iro.umontreal.ca>
10059
10060 * xdisp.c (select_frame_for_redisplay): Adjust for last change to
10061 indirect_variable.
10062 * eval.c (lisp_indirect_variable): New fun.
10063 (Fuser_variable_p): Use it.
10064
100652008-05-19 Stefan Monnier <monnier@iro.umontreal.ca>
10066
10067 * lisp.h (indirect_variable):
10068 * data.c (indirect_variable, let_shadows_buffer_binding_p):
10069 Use Lisp_Symbol pointers rather than Lisp_Object.
10070 Adjust callers.
10071 * buffer.c (buffer_slot_type_mismatch): Use wrong-type-argument.
10072 To this end, change calling-convention.
10073
10074 * minibuf.c (Finternal_complete_buffer): Only strip out hidden buffers
10075 if some non-hidden buffers are selected by string&pred.
10076
100772008-05-19 Chong Yidong <cyd@stupidchicken.com>
10078
10079 * process.c (wait_reading_process_output): Always check status
10080 when in batch mode.
10081
100822008-05-19 Kenichi Handa <handa@m17n.org>
10083
10084 * font.c (font_list_entities): Fix handling of cache.
10085 (font_matching_entity): Likewise.
10086
10087 * ftfont.c (cs_iso8859_1): Delete.
10088 (ft_face_cache): New variable.
10089 (struct ftfont_info): New member fc_charset_idx.
10090 (ftfont_build_basic_charsets): Delete.
10091 (fc_charset_table): New variable.
10092 (ftfont_pattern_entity): New arg fc_charset_idx. Store (FILENAME
10093 . FC_CHARSET_IDX) as :font-entity property in the font entity.
10094 Callers changed.
10095 (ftfont_lookup_cache, ftfont_get_charset): New functions.
10096 (ftfont_spec_pattern): New argument fc_charset_idx.
10097 Check registry more rigidly. Change callers.
10098 (ftfont_open, ftfont_close, ftfont_has_char): Adjust for the
10099 change of :font-entity property of the font.
10100
10101 * xftfont.c (xftfont_open): Adjust for the change of :font-entity
10102 property of the font.
10103
101042008-05-18 Juanma Barranquero <lekktu@gmail.com>
10105
10106 * coding.c (Fcoding_system_p): Rename argument to match docstring.
10107 (Funencodable_char_position, Fcheck_coding_systems_region)
10108 (Fdecode_coding_string, Fencode_coding_string): Fix typos in docstrings.
10109 (Fdetect_coding_region, Fdetect_coding_string, Fencode_coding_region)
10110 (Ffind_operation_coding_system, Fset_coding_system_priority)
10111 (Fcoding_system_eol_type): Doc fixes.
10112
101132008-05-17 Glenn Morris <rgm@gnu.org>
10114
10115 * sysdep.c (child_setup_tty): Handle systems with NLDLY, without FFDLY.
10116
101172008-05-16 Eli Zaretskii <eliz@gnu.org>
10118
10119 * dired.c (Ffile_attributes): Shut up GCC warnings about st_uid
10120 and st_gid.
10121
10122 * frame.c (Fdelete_frame): Don't call font_update_drivers if
10123 HAVE_WINDOW_SYSTEM is not defined.
10124
10125 * xfaces.c (merge_face_ref, merge_face_vectors)
10126 (Finternal_set_lisp_face_attribute): Use FONT_*_INDEX only when
10127 HAVE_WINDOW_SYSTEM is defined.
10128 (Fface_font): Fix non-HAVE_WINDOW_SYSTEM case.
10129
101302008-05-16 Stefan Monnier <monnier@iro.umontreal.ca>
10131
10132 * keyboard.c (parse_menu_item): Do not cache key shortcut any more.
10133
101342008-05-15 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
10135
10136 * macterm.c (x_draw_relief_rect): Remove unused variable `dpy'.
10137
101382008-05-15 Kenichi Handa <handa@m17n.org>
10139
10140 * font.c (font_find_for_lface): Reflect LFACE_FONT in the font
10141 preference.
10142
101432008-05-15 Glenn Morris <rgm@gnu.org>
10144
10145 * emacs.c (USAGE1, standard_args): Remove -disable-font-backend.
10146
101472008-05-15 Chong Yidong <cyd@stupidchicken.com>
10148
10149 * fns.c (init_fns): Don't initialize weak_hash_tables here.
10150 (init_weak_hash_tables): New fun. Initialize weak_hash_tables.
10151
10152 * alloc.c (init_alloc_once): Call init_weak_hash_tables.
10153
101542008-05-15 Kenichi Handa <handa@m17n.org>
10155
10156 * ftfont.c (ftfont_list): Downcase family name to check generic
10157 families.
10158
10159 * xfaces.c (Finternal_set_lisp_face_attribute): Be sure to make a
10160 font-spec for QCfont value.
10161
10162 * fontset.c (Fnew_fontset): Call font_unparse_xlfd with 256-byte
10163 buffer. Check the return value of it.
10164
101652008-05-14 Jason Rumney <jasonr@gnu.org>
10166
10167 * w32term.c (w32_get_glyph_overhangs): Remove.
10168 (w32_redisplay_interface): Use x_get_glyph_overhangs instead.
10169
101702008-05-14 Kenichi Handa <handa@m17n.org>
10171
10172 * font.c (font_prop_validate): Make nil a valid value.
10173 (font_clear_cache): Check if the cached vector of entities is nil
10174 or not.
10175
101762008-05-14 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
10177
10178 * emacs.c (main_thread): Conditionalize on
10179 FORWARD_SIGNAL_TO_MAIN_THREAD instead of HAVE_GTK_AND_PTHREAD.
10180 (main) [FORWARD_SIGNAL_TO_MAIN_THREAD]: Initialize it.
10181
10182 * syssignal.h (FORWARD_SIGNAL_TO_MAIN_THREAD): New define.
10183 (main_thread, SIGNAL_THREAD_CHECK): Conditionalize on
10184 FORWARD_SIGNAL_TO_MAIN_THREAD instead of HAVE_GTK_AND_PTHREAD.
10185
101862008-05-14 Kenichi Handa <handa@m17n.org>
10187
10188 * coding.c (detect_coding_iso_2022): Ignore a coding category that
10189 has no corresponding coding system.
10190
101912008-05-14 Jason Rumney <jasonr@gnu.org>
10192
10193 * font.h (struct font) [WINDOWSNT]: Remove codepage member.
10194
10195 * w32font.h (w32font_open_internal): Update declaration.
10196
10197 * w32font.c (w32font_open_internal): Change last argument from
10198 w32font_info struct to font object. Fill in font object from
10199 font_entity. Get Outline metrics if possible. Use them to
10200 calculate underline position and thickness. Use xlfd name as name
10201 property. Don't set codepage.
10202 (w32font_open): Pass font_object to w32font_open_internal. Don't
10203 update dpyinfo->smallest_font_height and dpyinfo->smallest_char_width.
10204 (w32font_draw): Use s->font.
10205 (clear_cached_metrics): Don't clear non-existent blocks.
10206
10207 * w32term.c (w32_compute_glyph_string_overhangs): Don't compute if
10208 font was not found.
10209 (x_draw_glyph_string): Use underline position and thickness from font.
10210
10211 * w32uniscribe.c (uniscribe_open): Pass font_object to
10212 w32font_open_internal.
10213
102142008-05-14 Kenichi Handa <handa@m17n.org>
10215
10216 These changes are to delete all legacy font-handling codes, and
10217 make Emacs use only font-backends.
10218
10219 * Makefile.in: Delete USE_FONT_BACKEND conditionals.
10220 (frame.o, image.o, print.o): Depend on $(FONTSRC).
10221
10222 * makefile.w32-in (WIN32OBJ): Add w32reg.$(O), remove w32bdf.$(O).
10223
10224 * charset.h (Vcharset_non_preferred_head)
10225 (Vcurrent_iso639_language): Extern them.
10226
10227 * charset.c (Vcharset_non_preferred_head): New variable.
10228 (Vcurrent_iso639_language): New variable.
10229 (syms_of_charset): Declare it as a Lisp variable.
10230 (char_charset): Don't check non preferred charsets. As a last
10231 resort, return charset_unicode.
10232 (Fset_charset_priority): Update Vcharset_non_preferred_head.
10233
10234 * composite.c: Throughout the file, delete all USE_FONT_BACKEND
10235 conditionals. Don't check enable_font_backend. Delete all codes
10236 used only when USE_FONT_BACKEND is not defined.
10237
10238 * dispextern.h (struct glyph_string): Change type of `font' to
10239 `struct font *'.
10240 (struct glyph_string): New member underline_position and
10241 underline_thickness.
10242 (enum lface_attribute_index): Remove LFACE_AVGWIDTH_INDEX.
10243 (struct face): Change type of `font' to `struct font *'. Remove
10244 members `font_name', `font_info_id'.
10245 (per_char_metric, encode_char): Delete externs.
10246 (calc_pixel_width_or_height): Adjust the prototype.
10247
10248 * emacs.c (enable_font_backend): Delete extern.
10249 (main): Don't set enable_font_backend. Don't check the command
10250 line argument "-disable-font-backend".
10251
10252 * font.h (Qfont_spec, Qfont_entity, Qfont_object): Extern them.
10253 (enum font_property_index): New members FONT_DPI_INDEX,
10254 FONT_SPACING_INDEX, FONT_AVGWIDTH_INDEX, FONT_NAME_INDEX,
10255 FONT_FULLNAME_INDEX, FONT_FILE_INDEX, FONT_FORMAT_INDEX,
10256 FONT_OBJECT_MAX. Delete FONT_FRAME_INDEX.
10257 (FONT_WEIGHT_NUMERIC, FONT_SLANT_NUMERIC, FONT_WIDTH_NUMERIC)
10258 (FONT_WEIGHT_SYMBOLIC, FONT_SLANT_SYMBOLIC, FONT_WIDTH_SYMBOLIC)
10259 (FONT_WEIGHT_FOR_FACE, FONT_SLANT_FOR_FACE, FONT_WIDTH_FOR_FACE)
10260 (FONT_WEIGHT_NAME_NUMERIC, FONT_SLANT_NAME_NUMERIC)
10261 (FONT_WIDTH_NAME_NUMERIC, FONT_SET_STYLE): New macros.
10262 (struct font_spec, struct font_entity): New structs.
10263 (FONT_ENCODING_NOT_DECIDED): Moved from fontset.h.
10264 (struct font): Many members from old "struct font_info" moved to
10265 here. Members font and entity deleted.
10266 (FONT_SPEC_P, FONT_ENTITY_P, FONT_OBJECT_P, FONTP): Modified for
10267 the new font-related objects.
10268 (CHECK_FONT_SPEC, CHECK_FONT_ENTITY, CHECK_FONT_OBJECT)
10269 (CHECK_FONT_GET_OBJECT): Likewise.
10270 (XFONT_SPEC, XFONT_ENTITY, XFONT_OBJECT, XSETFONT): New macros.
10271 (PT_PER_INCH, POINT_TO_PIXEL, PIXEL_TO_POINT): Moved from font.h.
10272 (struct font_driver): New members case_sensitive anc check. Type
10273 of the member list and open changed.
10274 (enable_font_backend, font_symbolic_weight, font_symbolic_slant)
10275 (font_symbolic_width, font_find_object, font_get_spec)
10276 (font_set_lface_from_name): Delete extern.
10277 (Fcopy_font_spec, Fmerge_font_spec, Ffont_family_list): New EXFUNs.
10278
10279 * font.c: Include <strings.h>.
10280 (enable_font_backend): Delete it.
10281 (Qfont_spec, Qfont_entity, Qfont_object): New variables.
10282 (CHECK_VALIDATE_FONT_SPEC): Delete it.
10283 (PT_PER_INCH, POINT_TO_PIXEL, PIXEL_TO_POINT): Moved to font.h.
10284 (null_string): Delete it.
10285 (null_vector): Make it static.
10286 (font_family_alist): Delete it.
10287 (Qnormal): Extern it.
10288 (QCextra, QClanguage): Delete it.
10289 (QClang, QCavgwidth, QCfont_entity, QCfc_unknown_spec): New variables.
10290 (font_make_spec, font_make_entity, font_make_object)
10291 (font_intern_prop): Renamed from intern_downcase. Don't downcase
10292 the string. Callers changed.
10293 (font_pixel_size): Adjusted for the format change of font-related
10294 objects.
10295 (prop_name_to_numeric, prop_numeric_to_name): Delete them.
10296 (font_style_to_value, font_style_symbolic): New function.
10297 (build_font_family_alist): Delete it.
10298 (font_registry_charsets): Use Fassoc_string instead of
10299 assq_no_quit.
10300 (font_prop_validate_symbol): Don't return null_string.
10301 (font_prop_validate_style): Adjusted for the change of
10302 style-related values in a font vector.
10303 (font_property_table): Delete entries for QClanguage and
10304 QCantialias, add entries for QCavgwidth.
10305 (get_font_prop_index): Delete the 2nd argument FROM.
10306 (font_prop_validate): Arguments changed.
10307 (font_put_extra): Adjusted for the change of font-related objects.
10308 (font_expand_wildcards, font_parse_xlfd, font_unparse_xlfd)
10309 (font_parse_fcname, font_unparse_fcname)
10310 (font_prepare_composition): Likewise.
10311 (font_parse_family_registry): Renamed from font_merge_old_spec.
10312 (otf_open): Delete the 1st arg entity.
10313 (font_otf_capability): Adjusted for the above change.
10314 (font_score): New arg alternate_families. Adjusted for the change
10315 of font-related objects.
10316 (font_sort_entites): New arg best_only.
10317 (font_symbolic_weight, font_symbolic_slant, font_symbolic_width):
10318 Delete them.
10319 (font_match_p): Check alternate families.
10320 (font_find_object): Delete it.
10321 (font_check_object): New function.
10322 (font_clear_cache): Adjusted for the change of font-related objects.
10323 (font_delete_unmatched): New arg.
10324 (font_list_entities): Call font_driver->list with a spec that
10325 doesn't specify style-related properties.
10326 (font_matching_entity): Arguments changed. Caller changed.
10327 (font_open_entity): Adjusted for the change of font-related objects.
10328 (font_close_object, font_has_char, font_encode_char)
10329 (font_get_name, font_get_spec): Likewise.
10330 (font_spec_from_name, font_clear_prop, font_update_lface):
10331 New functions.
10332 (font_find_for_lface, font_open_for_lface, font_load_for_lface)
10333 (font_prepare_for_face, font_done_for_face, font_open_by_name)
10334 (font_at): Adjusted for the change of font-related objects.
10335 (font_range): New function.
10336 (Ffontp, Ffont_spec, Ffont_get, Ffont_put, Flist_fonts)
10337 (Ffont_xlfd_name): Adjusted for the change of font-related objects.
10338 (Fcopy_font_spec, Fmerge_font_spec): New function.
10339 (Ffont_family_list): Renamed from list-families.
10340 (Finternal_set_font_style_table): Arguments changed.
10341 (Ffont_fill_gstring, Ffont_shape_text, Fopen_font)
10342 (Ffont_drive_otf, Fquery_font, Ffont_match_p): Adjusted for the
10343 change of font-related objects.
10344 (syms_of_font): Delete "ifdef USE_FONT_BACKEND". DEFSYM new symbols.
10345
10346 * fontset.h (struct font_info): Delete it. Most members go to
10347 struct font.
10348 (FONT_ENCODING_NOT_DECIDED): Moved to font.h.
10349 (enum FONT_SPEC_INDEX): Delete it.
10350 (font_info, list_fonts_func, load_font_func, query_font_func)
10351 (set_frame_fontset_func, find_ccl_program_func)
10352 (get_font_repertory_func, new_fontset_from_font_name): Delete
10353 externs.
10354 (fontset_from_font_name): Extern it.
10355 (FS_LOAD_FONT, FONT_INFO_ID, FONT_INFO_FROM_ID)
10356 (FONT_INFO_FROM_FACE): Deleted.
10357 (face_for_font): Adjust prototype.
10358
10359 * fontset.c: Throughout the file, delete all USE_FONT_BACKEND
10360 conditionals. Don't check enable_font_backend. Delete all codes
10361 used only when USE_FONT_BACKEND is not defined.
10362 (get_font_info_func, list_font_func, load_font_func)
10363 (query_font_func, set_frame_fontset_func, find_ccl_program_func)
10364 (get_font_repertory_func): Delete them.
10365 (FONTSET_SPEC, FONT_DEF_NEW, FONT_DEF_SPEC, FONT_DEF_ENCODING)
10366 (FONT_DEF_REPERTORY, RFONT_DEF_FACE, RFONT_DEF_SET_FACE)
10367 (RFONT_DEF_FONT_DEF, RFONT_DEF_SPEC, RFONT_DEF_REPERTORY)
10368 (RFONT_DEF_OBJECT, RFONT_DEF_SET_OBJECT, RFONT_DEF_SCORE)
10369 (RFONT_DEF_SET_SCORE, RFONT_DEF_NEW): New macros.
10370 (fontset_compare_rfontdef): New function.
10371 (reorder_font_vector): Remove the argument CHARSET-ID. Sort
10372 rfont-defs by qsort. Adjusted for the change of font-group vector.
10373 (load_font_get_repertory): Deleted.
10374 (fontset_find_font): Use new macros to ref/set elements of
10375 font-def and rfont-def.
10376 (fontset_font): Fix the timing of remembering that no font for C.
10377 (free_face_fontset): Do nothing if the face has no fontset.
10378 (face_suitable_for_char_p): Use new macros to ref/set elements of
10379 rfont-def.
10380 (face_for_char): Likewise. Call face_for_char with font_object.
10381 (fs_load_font): Delete. Delete #pragma surrounding it.
10382 (fs_query_fontset): Use strcasecmp instead of strcmp.
10383 (generate_ascii_font_name): Adjusted for the format change of
10384 font-spec.
10385 (Fset_fontset_font): Likewise. Use new macros to set elements of
10386 font-def.
10387 (Fnew_fontset): Use font_unparse_xlfd to generate
10388 FONTSET_ASCII (fontset).
10389 (new_fontset_from_font_name): Deleted.
10390 (fontset_from_font): Renamed from new_fontset_from_font. Check if
10391 a fontset is already created for the font. FIx updating of
10392 Vfontset_alias_alist.
10393 (fontset_ascii_font): Deleted.
10394 (Ffont_info): Adjusted for the format change of font-spec.
10395 (Finternal_char_font): Likewise.
10396 (Ffontset_info): Likewise.
10397 (syms_of_fontset): Don't check load_font_func.
10398
10399 * fns.c (internal_equal): Handle PREV_FONT.
10400
10401 * frame.h: Delete USE_FONT_BACKEND conditional.
10402
10403 * frame.c: Throughout the file, delete all USE_FONT_BACKEND
10404 conditionals. Don't check enable_font_backend. Delete all codes
10405 used only when USE_FONT_BACKEND is not defined.
10406 (x_set_font): Call x_new_font, not x_new_fontset2.
10407 (x_set_font_backend): Use FRAME_FONT macro to check if a font is
10408 already set for the frame.
10409
10410 * ftfont.c (ftfont_pattern_entity): Argument FRAME removed. Make
10411 a font-entity by font_make_entity. Use font_intern_prop instead
10412 of intern_downcase. Use FONT_SET_STYLE to set a style-related
10413 font property. If a font is scalable, set avgwidth property to 0.
10414 Set font-entity property by font_put_extra.
10415 (ftfont_list_generic_family): Argument SPEC and REGISTRY removed.
10416 (ffont_driver): Adjusted for the change of struct font_driver.
10417 (ftfont_spec_pattern): New function.
10418 (ftfont_list): Return a list, not vector.
10419 (ftfont_match): Use ftfont_spec_pattern to get a pattern.
10420 (ftfont_list_family): Don't downcase names.
10421 (ftfont_free_entity): Deleted.
10422 (ftfont_open): Return a font-object. Adjusted for the change of
10423 struct font. Get underline_thickness and underline_position from
10424 font property. Don't update dpyinfo->smallest_font_height and
10425 dpyinfo->smallest_char_width.
10426 (ftfont_close): Don't free `struct font'.
10427 (ftfont_has_char): Adjusted for the format change of font-entity.
10428 (ftfont_encode_char, ftfont_text_extents): Likewise.
10429
10430 * ftxfont.c (ftxfont_list): Return a list, not vector.
10431 (ftxfont_open): Return a font-object. Adjusted for the change of
10432 struct font. Get underline_thickness and underline_position from
10433 font property. Don't update dpyinfo->smallest_font_height and
10434 dpyinfo->smallest_char_width.
10435 (ftxfont_close): Don't decrease FRAME_X_DISPLAY_INFO (f)->n_fonts.
10436 (ftxfont_draw): Adjusted for the change of struct font.
10437
10438 * image.c (image_ascent): Don't include "charset.h". Include
10439 "character.h" and "font.h".
10440
10441 * lisp.h (enum pvec_type): New member PREV_FONT.
10442 (Fassoc_string): EXFUN it.
10443
10444 * print.c: Include font.h.
10445 (print_object): Handle font-related objects.
10446
10447 * xdisp.c: Throughout the file, delete all USE_FONT_BACKEND
10448 conditionals. Don't check enable_font_backend. Delete all codes
10449 used only when USE_FONT_BACKEND is not defined.
10450 (handle_auto_composed_prop): Do nothing if it->f is not on a
10451 window system. Check how many following characters can be
10452 displayed by the same font.
10453 (calc_pixel_width_or_height): Type of the 4th arg is changed to
10454 'struct font *'.
10455 (get_char_face_and_encoding): Assign the whole encoding task to
10456 the `encode-char' method of a font driver.
10457 (fill_composite_glyph_string): Adjusted for the change of `struct
10458 face' and `struct glyph_string'.
10459 (fill_glyph_string): Likewise.
10460 (get_per_char_metric): Arguments changed.
10461 (x_get_glyph_overhangs): Adjusted for the change of `struct face'
10462 and `struct glyph_string'.
10463 (produce_stretch_glyph, calc_line_height_property)
10464 (x_produce_glyphs): Likewise.
10465
10466 * xfaces.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. Use
10469 FONT_XXX_NAME_NUMERIC instead of face_numeric_xxx.
10470 (QCfoundry, QCadstyle, QCregistry, QCspacing, QCsize, QCavgwidth)
10471 (Qp): Extern them.
10472 (clear_font_table, load_face_font, xlfd_lookup_field_contents):
10473 Deleted.
10474 (struct font_name): Deleted.
10475 (xlfd_numeric_value, xlfd_symbolic_value): Deleted.
10476 (compare_fonts_by_sort_order): New function.
10477 (xlfd_numeric_slant, xlfd_symbolic_slant, xlfd_numeric_weight)
10478 (xlfd_symbolic_weight, xlfd_numeric_swidth, xlfd_symbolic_swidth):
10479 Deleted.
10480 (Fx_family_fonts): Use font_list_entities, and sort fonts by
10481 compare_fonts_by_sort_order.
10482 (Fx_font_family_list): Call Ffont_family_list.
10483 (face_numeric_value, face_numeric_weight, face_numeric_slant)
10484 (face_numeric_swidth, face_symbolic_value, face_symbolic_weight)
10485 (face_symbolic_slant, face_symbolic_swidth)
10486 (split_font_name_into_vector, build_font_name_from_vector)
10487 (xlfd_fixed_p, xlfd_point_size, pixel_point_size)
10488 (font_rescale_ratio, split_font_name, build_font_name)
10489 (free_font_names, sort_fonts, x_face_list_fonts)
10490 (face_font_available_p, sorted_font_list, cmp_font_names)
10491 (font_list_1, concat_font_list, font_list, remove_duplicates):
10492 Deleted.
10493 (Fx_list_fonts): Use Ffont_list.
10494 (LFACE_AVGWIDTH): Deleted.
10495 (check_lface_attrs): Don't check LFACE_AVGWIDTH. Check LFACE_FONT
10496 by FONTP.
10497 (lface_fully_specified_p): Don't check LFACE_AVGWIDTH.
10498 (set_lface_from_font_name): Delete it.
10499 (set_lface_from_font): Renamed from
10500 set_lface_from_font_and_fontset. Caller changed. Don't set
10501 LFACE_AVGWIDTH. Use FONT_XXX_FOR_FACE to get a symbol suitable
10502 for face.
10503 (merge_face_vectors): Copy font-spec if necessary.
10504 Clear properties of the font-spec if necessary.
10505 (merge_face_ref): Clear properties of the font-spec if necessary.
10506 (Finternal_set_lisp_face_attribute): Likewise.
10507 (set_font_frame_param): Use font_load_for_lface to load a
10508 font-object, and call Fmodify_frame_parameters with it.
10509 (x_update_menu_appearance): Don't check LFACE_AVGWIDTH. Get XLFD
10510 font name by Ffont_xlfd_name.
10511 (Finternal_lisp_face_attribute_values): Don't check QCweight,
10512 QCslant, and QCwidth.
10513 (Fface_font): Get a font name from font->props[FONT_NAME_INDEX].
10514 (lface_same_font_attributes_p): Don't check LFACE_AVGWIDTH.
10515 Compare fonts by EQ.
10516 (lookup_non_ascii_face): Deleted.
10517 (face_for_font): The 2nd argument changed.
10518 (x_supports_face_attributes_p): Don't check LFACE_AVGWIDTH.
10519 Check atomic font properties by case insensitive.
10520 (realize_non_ascii_face): Set face->overstrike correctly.
10521 (realize_x_face): Likewise. Check if LFACE_FONT is a font_object.
10522 (dump_realized_face): Get font name from
10523 font->props[FONT_NAME_INDEX]. Don't print font_info_id.
10524
10525 * xfns.c: Throughout the file, delete all USE_FONT_BACKEND
10526 conditionals. Don't check enable_font_backend. Delete all codes
10527 used only when USE_FONT_BACKEND is not defined.
10528 (xic_create_xfontset): Original code deleted and renamed from
10529 xic_create_xfontset2. Use FRAME_FONT, not FRAME_FONT_OBJECT.
10530 (x_make_gc): Don't set GCFont in GCs.
10531 (Fx_create_frame) [USE_LUCID]: Set xlwmenu_default_font to a font
10532 opened by "fixed".
10533 (syms_of_xfns): Don't set get_font_info_func, load_font_func,
10534 find_ccl_program_func, query_font_func, set_frame_fontset_func,
10535 get_font_repertory_func.
10536
10537 * xfont.c: Include <stdlib.h> and "ccl.h".
10538 (struct xfont_info): New structure.
10539 (xfont_query_font): Deleted.
10540 (xfont_find_ccl_program): Renamed from x_find_ccl_program and
10541 moved from xterm.c.
10542 (xfont_driver): Adjusted for the change of struct font_driver.
10543 (compare_font_names): New function.
10544 (xfont_list_pattern): Sort font names case insensitively. Make
10545 font_entity by calling font_make_entity. Avoid auto-scaled fonts.
10546 (xfont_list): Return a list, not vector.
10547 (xfont_match): If the font doesn't have QCname property, generate
10548 a name from the other font properties.
10549 (xfont_open): Return a font-object. Adjusted for the change of
10550 struct font. Get underline_thickness and underline_position from
10551 font property. Don't update dpyinfo->smallest_font_height and
10552 dpyinfo->smallest_char_width.
10553 (xfont_close): Don't free struct font.
10554 (xfont_prepare_face): Adjusted for the change of struct font.
10555 (xfont_done_face): Deleted.
10556 (xfont_has_char): Adjusted for the change of struct font.
10557 (xfont_encode_char, xfont_draw): Likewise.
10558 (xfont_check): New function.
10559
10560 * xftfont.c (xftfont_list): Adjusted for the change of `list'
10561 callback function.
10562 (xftfont_match): Adjusted for the format change of font-entity.
10563 (xftfont_open): Adjusted for the format change of font-entity and
10564 font-object. Adjusted for the change of struct font. Return a
10565 font-object. Don't update dpyinfo->smallest_font_height and
10566 dpyinfo->smallest_char_width.
10567 (xftfont_close): Block input while calling XftFontClose.
10568 (xftfont_prepare_face): Don't block input while calling
10569 xftfont_get_colors. Adjusted for the change of struct font.
10570 (xftfont_shape): Return value of error case fixed.
10571
10572 * xrdb.c (x_load_resources): Don't setup a fontset resource.
10573
10574 * xterm.h: Throughout the file, delete all USE_FONT_BACKEND
10575 conditionals.
10576 (FONT_WIDTH): Return (f)->max_width.
10577 (struct x_display_info): Delete member `font'.
10578 (x_list_fonts, x_get_font_info, x_load_font, x_query_font)
10579 (x_find_ccl_program, x_get_font_repertory): Delete externs.
10580 (struct x_output): Change type of `font' to `struct font *'.
10581
10582 * xterm.c: Throughout the file, delete all USE_FONT_BACKEND
10583 conditionals. Don't check enable_font_backend. Delete all codes
10584 used only when USE_FONT_BACKEND is not defined. Don't include ccl.h.
10585 (x_per_char_metric, x_encode_char): Deleted.
10586 (x_set_cursor_gc, x_set_mouse_face_gc): Don't set GCFont.
10587 (x_compute_glyph_string_overhangs): Adjusted for the change of
10588 `struct face'.
10589 (x_draw_glyph_string_foreground)
10590 (x_draw_composite_glyph_string_foreground): Likewise.
10591 (x_draw_glyph_string): Likewise. Use font->underline_position and
10592 font->underline_thickness.
10593 (x_new_font): Renamed from x_new_fontset2.
10594 (x_new_fontset, x_get_font_info, x_list_fonts): Deleted.
10595 (x_check_font): Call `check' method of a font driver.
10596 (x_font_min_bounds, x_compute_min_glyph_bounds, x_load_font)
10597 (x_query_font, x_get_font_repertory): Deleted.
10598 (x_find_ccl_program): Renamed and moved to xfont.c.
10599 (x_redisplay_interface): Adjusted for the change of `struct
10600 redisplay_interface'.
10601
10602 * w32fns.c: Throughout the file, delete all USE_FONT_BACKEND
10603 conditionals. Don't check enable_font_backend. Delete all codes
10604 used only when USE_FONT_BACKEND is not defined. Surround non-used
10605 code by "#ifdef OLD_FONT" and "endif".
10606 (Fw32_select_font): Use FONT_COMPAT to get old font structure.
10607
10608 * w32font.h (struct w32font_info): New member.
10609 (FONT_COMPAT): New macro.
10610 (w32font_open_internal): Prototype adjusted.
10611
10612 * w32gui.h (XGCValues): Surround `XFontStruct *font' by "if
10613 OLD_FONT" and "endif".
10614
10615 * w32font.c: Throughout the file, delete all USE_FONT_BACKEND
10616 conditionals. Don't check enable_font_backend. Delete all codes
10617 used only when USE_FONT_BACKEND is not defined.
10618 (w32font_open): Return a font-object. Make a font-object by
10619 font_make_object. Adjusted for the change of struct w32font_info.
10620 (w32font_close): Don't free struct font. Adjusted for the change
10621 of struct w32font_info.
10622 (w32font_encode_char, w32font_text_extents, w32font_draw):
10623 Adjusted for the change of struct w32font_info.
10624 (w32font_draw): Likewise.
10625 (w32font_list_internal): Return a list, not vector.
10626 (w32font_open_internal): Change the 4th arg to font-object.
10627 Adjusted for the change of struct w32font_info and font-object format.
10628 (add_font_name_to_list): Don't downcase names.
10629 (w32_enumfont_pattern_entity): Make a font-entity by
10630 font_make_entity. Adjusted for the format change of font-entity.
10631 Use FONT_SET_STYLE to set a style-related font property. If a
10632 font is scalable, set avgwidth property to 0. Set font-entity
10633 property by font_put_extra.
10634 (font_matches_spec): Adjusted for the format change of font-entity.
10635 (w32_weight_table, w32_decode_weight): New variables.
10636 (w32_encode_weight): New function.
10637 (fill_in_logfont): Adjusted for the format change of font-spec.
10638 (w32font_full_name): Use FONT_WEIGHT_SYMBOLIC to get a symbol
10639 weight value.
10640 (w32font_driver): Adjusted for the change of struct font_driver.
10641
10642 * w32term.h: Throughout the file, delete all USE_FONT_BACKEND
10643 conditionals. Don't check enable_font_backend. Surround non-used
10644 code by "#ifdef OLD_FONT" and "endif".
10645 (FONT_WIDTH, FONT_HEIGHT, FONT_BASE, FONT_DESCENT)
10646 (FONT_AVG_WIDTH): Adjusted for the change of struct font.
10647
10648 * w32term.c: Throughout the file, delete all USE_FONT_BACKEND
10649 conditionals. Don't check enable_font_backend. Delete all codes
10650 used only when USE_FONT_BACKEND is not defined. Surround non-used
10651 code by "#ifdef OLD_FONT" and "endif".
10652
10653 * w32uniscribe.c: Delete USE_FONT_BACKEND conditional.
10654 (uniscribe_open): Return value changed to font-object.
10655 Adjusted for the format change of font-object.
10656 (uniscribe_otf_capability): Adjusted for the change of struct font.
10657 (add_opentype_font_name_to_list): Don't downcase names.
10658 (uniscribe_font_driver): Adjusted for the change of struct
10659 font_driver.
10660
106612008-05-13 Chong Yidong <cyd@stupidchicken.com>
10662
10663 * dispnew.c (update_frame_1): Check if tty output is still valid
10664 before flushing it.
10665
106662008-05-13 Jan Djärv <jan.h.d@swipnet.se>
10667
10668 * xterm.c (handle_one_xevent): Don't pass buttons higher than 3
10669 to Gtk+ menus.
10670
106712008-05-13 Stefan Monnier <monnier@iro.umontreal.ca>
10672
10673 * dired.c (file_name_completion): Tweak the code so as to always do it
10674 in a single pass. Tighten the scope of some variables.
10675
10676 * dired.c (Qdefault_directory): New var.
10677 (file_name_completion): Use it instead of Fexpand_file_name.
10678 (syms_of_dired): Initialize it.
10679
106802008-05-12 Stefan Monnier <monnier@iro.umontreal.ca>
10681
10682 * fileio.c (double_dollars): Remove dead code.
10683
106842008-05-10 Eli Zaretskii <eliz@gnu.org>
10685
10686 * dired.c (Ffile_attributes, Fdirectory_files_and_attributes):
10687 Mention w32-get-true-file-attributes in doc string.
10688
10689 * w32proc.c (syms_of_ntproc) <w32-get-true-file-attributes>: Doc fix.
10690
106912008-05-09 Glenn Morris <rgm@gnu.org>
10692
10693 * fileio.c (Fread_file_name): Remove reference to insdef, deleted
10694 2008-04-23.
10695
106962008-05-09 Eli Zaretskii <eliz@gnu.org>
10697
10698 Support for reporting owner and group of each file on MS-Windows:
10699 * dired.c (stat_uname, stat_gname): New functions, with special
10700 implementation for w32.
10701 (Ffile_attributes): Use them instead of getpwuid and getgrgid.
10702
10703 * w32.c: Rename the_passwd_* to dflt_passwd_*.
10704 (dflt_group_name): New static variable.
10705 (dflt_group): Rename from the_group.
10706 (init_user_info): Init dflt_group fields. Get user's group name
10707 from LookupAccountSid.
10708 (g_b_init_get_file_security, g_b_init_get_security_descriptor_owner)
10709 (g_b_init_get_security_descriptor_group, g_b_init_is_valid_sid):
10710 New initialization states.
10711 (globals_of_w32): Initialize them to zero. Initialize the default
10712 group name to "None".
10713 (GetFileSecurity_Name): New global var, the name of the function
10714 to call for GetFileSecurity.
10715 (GetFileSecurity_Proc, GetSecurityDescriptorOwner_Proc)
10716 (GetSecurityDescriptorGroup_Proc, IsValidSid_Proc): New typedefs.
10717 (get_file_security, get_security_descriptor_owner)
10718 (get_security_descriptor_group, is_valid_sid)
10719 (get_file_security_desc, get_rid, get_name_and_id)
10720 (get_file_owner_and_group): New functions.
10721 (stat): Use get_file_security_desc and get_file_owner_and_group to
10722 report the owner and primary group of each file. Don't ignore the
10723 high 32 bits of file's size, now that st_size is 64-bit wide.
10724 Fix test when to get true file attributes.
10725 (init_user_info): Use get_rid instead of equivalent inline code.
10726 (fstat): Don't ignore the high 32 bits of file's size.
10727
107282008-05-09 Chong Yidong <cyd@stupidchicken.com>
10729
10730 * image.c (png_load): Use correct bit-depth for setting background
10731 color.
10732
107332008-05-08 Eli Zaretskii <eliz@gnu.org>
10734
10735 * Makefile.in (lisp, shortlisp): Rename epa-file-hook.elc to
10736 epa-hook.elc.
10737
107382008-05-08 Juanma Barranquero <lekktu@gmail.com>
10739
10740 * font.c (Ffont_match_p): Don't use `iff' in docstring.
10741
107422008-05-07 Dan Nicolaescu <dann@ics.uci.edu>
10743
10744 * macfns.c (Fx_create_frame): Make a copy of frame parameters
10745 because the original parameters are in pure storage now.
10746 (mac_window): Remove unused params. Update callers.
10747
107482008-05-06 Stefan Monnier <monnier@iro.umontreal.ca>
10749
10750 * lread.c (substitute_object_recurse): Use lower-level primitives.
10751 Don't signal errors when traversing sub-char-tables.
10752 Don't loop over all the possible characters when traversing char-tables.
10753
10754 * print.c (print_preprocess): Add sub-char-tables to the print-table,
10755 just like we do in print.c.
10756
107572008-05-05 Stefan Monnier <monnier@iro.umontreal.ca>
10758
10759 * minibuf.c (Ftry_completion): Remove code left over from when we used
10760 scmp instead of Fcompare_strings.
10761
107622008-05-04 Juanma Barranquero <lekktu@gmail.com>
10763
10764 * w32fns.c (Fw32_battery_status): Fix computation of %t (h:min) format.
10765
107662008-05-04 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
10767
10768 * image.c [USE_MAC_IMAGE_IO] (image_load_image_io):
10769 Create bitmap context in native byte order.
10770
10771 * macterm.c (XDrawLine)
10772 (XCreatePixmapFromBitmapData) [USE_MAC_IMAGE_IO]: Create bitmap
10773 context in native byte order.
10774
107752008-05-04 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
10776
10777 * config.in: Regenerate.
10778
10779 * image.c (PIX_MASK_DRAW, PIX_MASK_RETAIN) [USE_MAC_IMAGE_IO]:
10780 New definitions for Image I/O support.
10781 (XGetImage, XPutPixel, XGetPixel, XDestroyImage)
10782 (mac_create_cg_image_from_image, x_create_x_image_and_pixmap)
10783 [USE_MAC_IMAGE_IO]: Add implementations for Image I/O support.
10784 (mac_data_provider_release_data, image_load_image_io)
10785 [USE_MAC_IMAGE_IO]: New functions.
10786 (CGImageCreateWithPNGDataProviderProcType) [MAC_OSX]: Remove typedef.
10787 (MyCGImageCreateWithPNGDataProvider) [MAC_OSX]: Remove variable.
10788 (init_image_func_pointer) [MAC_OSX]: Remove function.
10789 (image_load_quartz2d) [MAC_OSX]: Check availability of
10790 CGImageCreateWithPNGDataProvider at compile time.
10791 Use lowercase `false' for boolean constant.
10792 (png_load, jpeg_load, tiff_load, gif_load) [USE_MAC_IMAGE_IO]:
10793 Use image_load_image_io.
10794 (png_load) [!USE_MAC_IMAGE_IO && MAC_OSX]:
10795 Don't check MyCGImageCreateWithPNGDataProvider.
10796 (init_image) [MAC_OSX && TARGET_API_MAC_CARBON]:
10797 Don't call init_image_func_pointer.
10798
10799 * macgui.h (Pixmap) [USE_MAC_IMAGE_IO]: New definition for Image I/O.
10800
10801 * macterm.c (mac_cg_color_space_rgb) [USE_CG_DRAWING]:
10802 Make variable non-static.
10803 (XDrawLine, XCreatePixmap, XCreatePixmapFromBitmapData, XFreePixmap)
10804 [USE_MAC_IMAGE_IO]: Add implementations for Image I/O support.
10805
10806 * macterm.h (ARGB_TO_ULONG, ALPHA_FROM_ULONG): New macros.
10807 (RED_FROM_ULONG): Mask off higher bits.
10808 (mac_cg_color_space_rgb) [USE_MAC_IMAGE_IO]: New extern.
10809
10810 * s/darwin.h [HAVE_CARBON && HAVE_AVAILABILITYMACROS_H]:
10811 Include AvailabilityMacros.h.
10812 (USE_MAC_IMAGE_IO, LIBS_IMAGE) [HAVE_CARBON]: New defines.
10813 (LIBS_CARBON) [HAVE_CARBON]: Use LIBS_IMAGE.
10814
108152008-05-03 Stefan Monnier <monnier@iro.umontreal.ca>
10816
10817 * chartab.c (Fset_char_table_range): If range is t, really set all
10818 chars to that value.
10819
108202008-05-03 Eli Zaretskii <eliz@gnu.org>
10821
10822 * dired.c (Ffile_attributes): Don't allow the device number become
10823 negative.
10824
108252008-05-02 Daiki Ueno <ueno@unixuser.org>
10826
10827 * Makefile.in (lisp, shortlisp): Add epa-file-hook.elc.
10828
108292008-05-02 Juri Linkov <juri@jurta.org>
10830
10831 * minibuf.c (Fread_from_minibuffer, Fread_string, Fread_command)
10832 (Fread_variable, Fread_buffer, Fcompleting_read): Document the
10833 DEFAULT argument as a list of default values in docstrings.
10834
108352008-05-01 Chong Yidong <cyd@stupidchicken.com>
10836
10837 * puresize.h (BASE_PURESIZE): Increase to 1210000.
10838
108392008-05-01 Martin Rudalics <rudalics@gmx.at>
10840
10841 * dispnew.c (change_frame_size_1): Preserve small windows when
10842 shrinking frames by calling set_window_height|width with third
10843 arg 2.
10844
10845 * window.h (struct window): Replace field too_small_ok by field
10846 resize_proportionally.
10847
10848 * window.c (make_window): Initialize resize_proportionally.
10849 (enlarge_window): Temporarily set resize_proportionally to make
10850 sure that shrink_windows does scale the window proportionally.
10851 (shrink_windows): When window has resize_proportionally set try
10852 to shrink it proportionally by stealing from other windows.
10853 (struct saved_window, Fset_window_configuration)
10854 (compare_window_configurations): Handle resize_proportionally.
10855 (WINDOW_TOTAL_SIZE): New macro.
10856 (window_min_size, shrink_windows, size_window): Use it.
10857 (check_min_window_sizes): Remove. Invalid values of
10858 window-min-height|width are handled by window_min_size_2 now.
10859 (size_window, Fsplit_window, enlarge_window)
10860 (adjust_window_trailing_edge, grow_mini_window): Don't call
10861 check_min_window_sizes.
10862 (window_min_size_2, window_min_size_1, window_min_size):
10863 New argument safe_p for retrieving "safe" minimum sizes.
10864 (Fdisplay_buffer, Fsplit_window, enlarge_window)
10865 (adjust_window_trailing_edge, grow_mini_window):
10866 Adjust arguments of window_min_size... functions.
10867 (shrink_windows): Argument min_size removed. New argument
10868 safe_p allows shrinking windows to their safe minimum sizes.
10869 Calculate minimum size and decide whether a window shall be
10870 deleted for each window individually.
10871 (size_window): When nodelete_p equals 2, tell shrink_windows to
10872 delete windows only if their new minimum size is no more safe.
10873 (shrink_window_lowest_first): Call window_min_size_1 to make
10874 sure to preserve modeline of bottom-most window when resizing
10875 the minibuffer.
10876 (Fset_window_configuration, Fcurrent_window_configuration)
10877 (compare_window_configurations): Do not handle
10878 window-min-height|width any more.
10879 (syms_of_window): Clarify window-min-height|width doc-strings.
10880
108812008-04-30 Stefan Monnier <monnier@iro.umontreal.ca>
10882
10883 * dired.c (file_name_completion): Fix up the encoding/decoding issue
10884 some more. Copy some of the code from Ftry_completions.
10885 Remove special case code that dates back to initial revision when the
10886 slash was only added when necessary and that can't trigger nowadays.
10887
108882008-04-27 Kenichi Handa <handa@m17n.org>
10889
10890 * font.c (font_prop_validate): Signal `error' instead of `font'.
10891
108922008-04-29 Jason Rumney <jasonr@gnu.org>
10893
10894 * w32fns.c (Fw32_battery_status): New defun.
10895 (syms_of_w32fns): Defsubr it.
10896
108972008-04-28 Andreas Schwab <schwab@suse.de>
10898
10899 * dired.c (file_name_completion): Fix another mixing of encoded
10900 and decoded names.
10901
109022008-04-28 Juanma Barranquero <lekktu@gmail.com>
10903
10904 * w32fns.c (Fw32_define_rgb_color): Fix typo in docstring.
10905
109062008-04-27 Juanma Barranquero <lekktu@gmail.com>
10907
10908 * fringe.c (Fdefine_fringe_bitmap): Doc fix.
10909
109102008-04-27 Andreas Schwab <schwab@suse.de>
10911
10912 * dired.c (file_name_completion): Fix inappropriate mixing of
10913 encoded and decoded names.
10914
10915 * xterm.c (XTread_socket): Fix use of uninitialized variable.
10916
10917 * puresize.h (BASE_PURESIZE): Increase to 1200000.
10918
109192008-04-26 Eli Zaretskii <eliz@gnu.org>
10920
10921 * dired.c (Ffile_attributes) [WINDOWSNT]: Undo change from
10922 2008-03-31, it's not needed anymore with `struct stat' definition
10923 on nt/inc/sys/stat.h. Undo changes from 2007-01-12 and 2007-01-13
10924 for the same reasons.
10925
109262008-04-25 Dennis Gilmore <ausil@fedoraproject.org> (tiny change)
10927
10928 * m/sparc.h: Additional redefinitions for GNU/Linux.
10929
109302008-04-23 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
10931
10932 * macterm.c (Vmac_ts_active_input_buf) [USE_MAC_TSM]: New variable.
10933 (syms_of_macterm) [USE_MAC_TSM]: Defvar it.
10934 (Qmouse_drag_overlay) [MAC_OSX]: New variable.
10935 (syms_of_macterm) [MAC_OSX]: Intern and staticpro it.
10936 (mac_get_selected_range, mac_store_buffer_text_to_unicode_chars)
10937 (mac_ax_selected_text_range) [MAC_OSX]: New functions.
10938 (mac_ax_number_of_characters) [MAC_OS_X_VERSION_MAX_ALLOWED >= 1030]:
10939 Likewise.
10940
10941 * mactoolbox.c (Vmac_ts_active_input_buf) [USE_MAC_TSM]: Add extern.
10942 (fast_find_position, x_y_to_hpos_vpos, mac_ax_selected_text_range)
10943 (mac_ax_number_of_characters): Add externs.
10944 (mac_get_selected_range, mac_store_buffer_text_to_unicode_chars)
10945 [USE_MAC_TSM]: Likewise.
10946 (mac_handle_text_input_event) [MAC_OSX]:
10947 Handle kEventTextInputOffsetToPos for no active input area case.
10948 Handle kEventTextInputPosToOffset and kEventTextInputGetSelectedText.
10949 (mac_handle_document_access_event)
10950 [MAC_OS_X_VERSION_MAX_ALLOWED >= 1030]: New function.
10951 (install_application_handler) [MAC_OSX]: Register handlers for
10952 kEventTextInputPosToOffset and kEventTextInputGetSelectedText.
10953 (install_application_handler) [MAC_OS_X_VERSION_MAX_ALLOWED >= 1030]:
10954 Register mac_handle_document_access_event.
10955
10956 * xdisp.c (x_y_to_hpos_vpos, fast_find_position) [HAVE_CARBON]:
10957 Make functions non-static.
10958
109592008-04-23 Stefan Monnier <monnier@iro.umontreal.ca>
10960
10961 * fileio.c (Vread_file_name_function, Vread_file_name_predicate)
10962 (read_file_name_completion_ignore_case, insert_default_directory)
10963 (Qdefault_directory): Move to minibuffer.el.
10964 (Fread_file_name): Call the new `read-file-name' instead.
10965
109662008-04-23 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
10967
10968 * mac.c (create_apple_event) [TARGET_API_MAC_CARBON]:
10969 Make function non-static.
10970 (create_apple_event_from_event_ref) [TARGET_API_MAC_CARBON]:
10971 Remove function.
10972 (create_apple_event_from_drag_ref) [TARGET_API_MAC_CARBON]:
10973 Move to mactoolbox.c.
10974 (mac_event_parameters_to_lisp) [TARGET_API_MAC_CARBON]: New function.
10975
10976 * macgui.h (CGFloat) [!CGFLOAT_DEFINED]: New typedef.
10977 (mac_rect_make): New macro.
10978
10979 * macterm.c (mac_draw_image_string_atsui) [MAC_OSX]: Use CGFloat
10980 instead of float.
10981 (mac_draw_image_string_cg) [USE_CG_TEXT_DRAWING]: Likewise.
10982 (init_cg_color, mac_draw_line, mac_draw_cg_image, XSetForeground)
10983 (XSetBackground) [USE_CG_DRAWING]: Likewise.
10984 (mac_draw_image_string_atsui) [MAC_OSX]: Use mac_rect_make instead of
10985 CGRectMake.
10986 (mac_draw_image_string_cg) [USE_CG_TEXT_DRAWING]: Likewise.
10987 (mac_erase_rectangle, mac_draw_cg_image, mac_fill_rectangle)
10988 (mac_set_clip_rectangles) [USE_CG_DRAWING]: Likewise.
10989 (XCreatePixmap, XCreatePixmapFromBitmapData): Use Window
10990 instead of WindowRef in argument type.
10991 (XCreatePixmap) [!MAC_OS8]: Don't call SetPortWindowPort.
10992 (mac_invert_rectangle): Use CGContextSetBlendMode if available.
10993 (mac_set_clip_rectangles, mac_reset_clip_rectangles): Take argument F
10994 instead of DISPLAY. All uses changed.
10995 (mac_handle_size_change): Don't call SET_FRAME_GARBAGED.
10996 (x_calc_absolute_position): Simplify so as not to use
10997 FRAME_PIXEL_WIDTH/FRAME_PIXEL_HEIGHT.
10998
10999 * macterm.h (XCreatePixmap, XCreatePixmapFromBitmapData): Use Window
11000 instead of WindowRef in argument type.
11001 (create_apple_event_from_event_ref, create_apple_event_from_drag_ref)
11002 [TARGET_API_MAC_CARBON]: Remove externs.
11003 (create_apple_event, mac_event_parameters_to_lisp)
11004 [TARGET_API_MAC_CARBON]: Add externs.
11005
11006 * mactoolbox.c (Vmac_ts_script_language_on_focus)
11007 (saved_ts_script_language_on_focus) [USE_MAC_TSM]: Remove externs.
11008 (XTread_socket) [USE_MAC_TOOLBAR]: Select window if its structure part
11009 is clicked.
11010 (x_activate_menubar): Remove extern for saved_menu_event_location.
11011 (create_apple_event_from_drag_ref) [TARGET_API_MAC_CARBON]:
11012 Move from mac.c.
11013
110142008-04-23 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
11015
11016 * alloc.c [!SYSTEM_MALLOC && !SYNC_INPUT] (uninterrupt_malloc)
11017 [HAVE_GTK_AND_PTHREAD && !DOUG_LEA_MALLOC]: Don't use recursive mutex.
11018
110192008-04-23 Jason Rumney <jasonr@gnu.org>
11020
11021 * w32.c (stat): When Vw32_get_true_file_attributes is Qlocal, get
11022 attributes only for local files.
11023
11024 * w32proc.c (syms_of_ntproc): Change Vw32_get_true_file attributes
11025 default to Qlocal.
11026
110272008-04-22 Juri Linkov <juri@jurta.org>
11028
11029 * buffer.c (Fswitch_to_buffer): Change interactive spec to call
11030 read-buffer-to-switch instead of using the letter "B".
11031
110322008-04-21 Stefan Monnier <monnier@iro.umontreal.ca>
11033
11034 * fileio.c (Qdefault_directory): New variable.
11035 (Fread_file_name): Use it to pass `dir' to the completion functions.
11036
110372008-04-20 Chong Yidong <cyd@stupidchicken.com>
11038
11039 * xdisp.c (pos_visible_p): Check if iterator stops on a display string.
11040
110412008-04-19 Stefan Monnier <monnier@iro.umontreal.ca>
11042
11043 * keyboard.c (Vpre_help_message): Remove.
11044 (show_help_echo): Remove default C code.
11045
11046 * dired.c (directory_files_internal, file_name_completion):
11047 Only call ENCODE_FILE if the string is indeed decoded.
11048
110492008-04-18 Stefan Monnier <monnier@iro.umontreal.ca>
11050
11051 * Makefile.in (TOOLKIT_DEFINES): Remove.
11052 (LIBW): Use a bit less #if, remove left over OPEN_LOOK stuff.
11053
110542008-04-18 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
11055
11056 * Makefile.in (MAC_OBJ): Add mactoolbox.o.
11057 (mactoolbox.o): New target.
11058
11059 * mac.c [MAC_OSX] (select_and_poll_event, sys_select):
11060 Use mac_run_loop_run_once instead of CFRunLoopRunInMode.
11061
11062 * macfns.c (x_set_background_color, mac_window, x_create_tip_frame):
11063 Use mac_set_frame_window_background instead of XSetWindowBackground.
11064 (x_set_tool_bar_lines) [USE_MAC_TOOLBAR]:
11065 Use mac_is_window_toolbar_visible instead of IsWindowToolbarVisible.
11066 (x_set_name_internal) [TARGET_API_MAC_CARBON]: Use mac_set_window_title
11067 instead of SetWindowTitleWithCFString.
11068 (mac_update_proxy_icon) [TARGET_API_MAC_CARBON]: Remove BLOCK_INPUT.
11069 Move function to mactoolbox.c.
11070 (mac_update_title_bar) [TARGET_API_MAC_CARBON]:
11071 Use mac_set_window_modified instead of SetWindowModified.
11072 Add BLOCK_INPUT around mac_set_window_modified/mac_update_proxy_icon.
11073 (mac_window, x_create_tip_frame): Use mac_create_frame_window.
11074 (Fx_focus_frame): Use mac_front_non_floating_window instead of
11075 FrontNonFloatingWindow. Use mac_activate_window instead of
11076 ActivateWindow. Use mac_active_non_floating_window instead of
11077 ActiveNonFloatingWindow.
11078 (show_hourglass, hide_hourglass) [TARGET_API_MAC_CARBON]:
11079 Use mac_show_hourglass and mac_hide_hourglass.
11080 (compute_tip_xy) [TARGET_API_MAC_CARBON]: Use mac_get_global_mouse
11081 instead of GetGlobalMouse.
11082 (Fx_show_tip): Use mac_move_window/mac_size_window/mac_show_window
11083 instead of MoveWindow/SizeWindow/ShowWindow, respectively.
11084 Use mac_bring_window_to_front instead of BringToFront.
11085 (Qfile_name_history) [TARGET_API_MAC_CARBON]: Move extern to
11086 mactoolbox.c.
11087 (Fx_file_dialog) [TARGET_API_MAC_CARBON]: Move function body to
11088 mac_file_dialog in mactoolbox.c. Use mac_file_dialog.
11089 (mac_nav_event_callback) [TARGET_API_MAC_CARBON]: Move function to
11090 mactoolbox.c.
11091
11092 * macgui.h [!HAVE_CARBON]: Include Quickdraw.h instead of QuickDraw.h.
11093 (XtPointer): Move typedef from macmenu.c.
11094 (enum button_type): Move enum from macmenu.c.
11095 (widget_value): Move typedef from macmenu.c.
11096 (M_APPLE, I_ABOUT, EXTRA_STACK_ALLOC, ARGV_STRING_LIST_ID)
11097 (DIALOG_LEFT_MARGIN, DIALOG_TOP_MARGIN, DIALOG_RIGHT_MARGIN)
11098 (DIALOG_BOTTOM_MARGIN, DIALOG_MIN_INNER_WIDTH, DIALOG_MAX_INNER_WIDTH)
11099 (DIALOG_BUTTON_BUTTON_HORIZONTAL_SPACE)
11100 (DIALOG_BUTTON_BUTTON_VERTICAL_SPACE, DIALOG_BUTTON_MIN_WIDTH)
11101 (DIALOG_TEXT_MIN_HEIGHT, DIALOG_TEXT_BUTTONS_VERTICAL_SPACE)
11102 (DIALOG_ICON_WIDTH, DIALOG_ICON_HEIGHT, DIALOG_ICON_LEFT_MARGIN)
11103 (DIALOG_ICON_TOP_MARGIN): Move defines from macmenu.c.
11104 (Selection): Move typedef from macselect.c.
11105 (RAM_TOO_LARGE_ALERT_ID, ABOUT_ALERT_ID) [MAC_OS8]: Move defines from
11106 macterm.c.
11107 (mac_set_window_title, mac_set_window_modified, mac_is_window_visible)
11108 (mac_is_window_collapsed, mac_bring_window_to_front)
11109 (mac_send_window_behind, mac_hide_window, mac_show_window)
11110 (mac_collapse_window, mac_front_non_floating_window)
11111 (mac_active_non_floating_window, mac_activate_window)
11112 (mac_move_window_structure, mac_move_window, mac_size_window)
11113 (mac_get_global_mouse, mac_is_window_toolbar_visible): New defines.
11114
11115 * macmenu.c [!TARGET_API_MAC_CARBON]: Move includes to mactoolbox.c.
11116 (enum mac_menu_kind): Move enum to mactoolbox.c.
11117 (min_menu_id): Move variable to mactoolbox.c.
11118 (quit_dialog_event_loop) [TARGET_API_MAC_CARBON]: Likewise.
11119 (DIALOG_WINDOW_RESOURCE): Move define to mactoolbox.c.
11120 (DIALOG_BUTTON_COMMAND_ID_OFFSET, DIALOG_BUTTON_COMMAND_ID_P)
11121 (DIALOG_BUTTON_COMMAND_ID_VALUE, DIALOG_BUTTON_MAKE_COMMAND_ID)
11122 [TARGET_API_MAC_CARBON]: Likewise.
11123 (XtPointer): Move typedef to macgui.h.
11124 (enum button_type): Move enum to macgui.h.
11125 (widget_value): Move typedef to macgui.h.
11126 (DIALOG_LEFT_MARGIN, DIALOG_TOP_MARGIN, DIALOG_RIGHT_MARGIN)
11127 (DIALOG_BOTTOM_MARGIN, DIALOG_MIN_INNER_WIDTH, DIALOG_MAX_INNER_WIDTH)
11128 (DIALOG_BUTTON_BUTTON_HORIZONTAL_SPACE)
11129 (DIALOG_BUTTON_BUTTON_VERTICAL_SPACE, DIALOG_BUTTON_MIN_WIDTH)
11130 (DIALOG_TEXT_MIN_HEIGHT, DIALOG_TEXT_BUTTONS_VERTICAL_SPACE)
11131 (DIALOG_ICON_WIDTH, DIALOG_ICON_HEIGHT, DIALOG_ICON_LEFT_MARGIN)
11132 (DIALOG_ICON_TOP_MARGIN): Move defines to macgui.h.
11133 (popup_activated_flag): Make variable non-static.
11134 (x_activate_menubar, install_menu_quit_handler, pop_down_menu)
11135 (add_menu_item, fill_menu, dispose_menus):
11136 Move functions to mactoolbox.c.
11137 (restore_show_help_function, menu_target_item_handler)
11138 (install_menu_target_item_handler, mac_handle_dialog_event)
11139 (install_dialog_event_handler, pop_down_dialog, create_and_show_dialog)
11140 [TARGET_API_MAC_CARBON]: Likewise.
11141 (menu_quit_handler) [MAC_OS_X_VERSION_MAX_ALLOWED >= 1030]: Likewise.
11142 (mac_dialog) [!TARGET_API_MAC_CARBON]: Likewise.
11143 (find_and_call_menu_selection, name_is_separator): Make function
11144 non-static.
11145 (Vshow_help_function, timer_check) [TARGET_API_MAC_CARBON]: Move extern
11146 to mactoolbox.c.
11147 (set_frame_menubar): Don't call install_menu_quit_handler.
11148 (menu_item_selection): New variable.
11149 (mac_menu_show): Use create_and_show_popup_menu.
11150 (create_and_show_dialog) [TARGET_API_MAC_CARBON]: Don't return
11151 selection but set variable menu_item_selection. All uses changed.
11152 (mac_fill_menubar): Rename from fill_menubar. All uses changed.
11153 Call install_menu_quit_handler. Move to mactoolbox.c.
11154
11155 * macselect.c [!TARGET_API_MAC_CARBON]: Don't include Scrap.h.
11156 (Selection): Move typedef to macgui.h.
11157 (Vselection_converter_alist, Qmac_scrap_name, Qmac_ostype)
11158 (Vmac_apple_event_map, Qmac_apple_event_class, Qmac_apple_event_id):
11159 Make variables non-static.
11160 (Vmac_dnd_known_types) [TARGET_API_MAC_CARBON]: Likewise.
11161 (mac_handle_apple_event, cleanup_all_suspended_apple_events):
11162 Make functions non-static.
11163 (Vmac_service_selection) [MAC_OSX]: Likewise.
11164 (mac_get_selection_from_symbol, get_flavor_type_from_symbol)
11165 (mac_valid_selection_target_p, mac_clear_selection)
11166 (mac_get_selection_ownership_info, mac_valid_selection_value_p)
11167 (mac_put_selection_value, mac_selection_has_target_p)
11168 (mac_get_selection_value, mac_get_selection_target_list)
11169 (init_apple_event_handler, install_drag_handler, remove_drag_handler):
11170 Move functions to mactoolbox.c.
11171 (mac_do_track_drag, mac_do_receive_drag) [TARGET_API_MAC_CARBON]:
11172 Likewise.
11173 (copy_scrap_flavor_data, mac_handle_service_event)
11174 (install_service_handler) [MAC_OSX]: Likewise.
11175 (syms_of_macselect) <Vmac_dnd_known_types>:
11176 Use mac_dnd_default_known_types.
11177
11178 * macterm.h (FRAME_OUTER_TO_INNER_DIFF_X, FRAME_OUTER_TO_INNER_DIFF_Y):
11179 Move to mactoolbox.c.
11180 (HOURGLASS_WIDTH, HOURGLASS_HEIGHT): Change to 15.
11181 (Fx_selection_owner_p): Add EXFUN.
11182 (install_window_handler, remove_window_handler, XSetWindowBackground):
11183 Remove externs.
11184 (do_apple_menu) [!TARGET_API_MAC_CARBON]: Likewise.
11185 (mac_prepare_for_quickdraw) [USE_CG_DRAWING]: Likewise.
11186 (x_raise_frame, x_lower_frame, mac_alert_sound_play)
11187 (install_application_handler, mac_get_frame_bounds, mac_get_frame_mouse)
11188 (mac_convert_frame_point_to_global, mac_set_frame_window_background)
11189 (mac_update_begin mac_update_end, mac_frame_up_to_date, x_flush)
11190 (mac_create_frame_window, mac_dispose_frame_window, mac_begin_clip)
11191 (mac_end_clip, mac_create_scroll_bar, mac_dispose_scroll_bar)
11192 (mac_set_scroll_bar_bounds, mac_redraw_scroll_bar, mac_fill_menubar)
11193 (create_and_show_popup_menu, mac_get_selection_from_symbol)
11194 (mac_valid_selection_target_p, mac_clear_selection)
11195 (mac_get_selection_ownership_info, mac_valid_selection_value_p)
11196 (mac_put_selection_value, mac_selection_has_target_p)
11197 (mac_get_selection_value, mac_get_selection_target_list): Add externs.
11198 (mac_update_proxy_icon, mac_show_hourglass, mac_hide_hourglass)
11199 (mac_reposition_hourglass, mac_file_dialog, create_and_show_dialog)
11200 (mac_dnd_default_known_types) [TARGET_API_MAC_CARBON]: Likewise.
11201 (mac_run_loop_run_once) [MAC_OSX]: Likewise.
11202 (mac_dialog) [!TARGET_API_MAC_CARBON]: Likewise.
11203 (mac_begin_cg_clip, mac_end_cg_clip) [USE_CG_DRAWING]: Likewise.
11204 (x_set_toolkit_scroll_bar_thumb) [!USE_TOOLKIT_SCROLL_BARS]: Likewise.
11205 (x_scroll_bar_set_handle) [!USE_TOOLKIT_SCROLL_BARS]: Likewise.
11206
11207 * mactoolbox.c: New file.
11208
112092008-04-18 Jason Rumney <jasonr@gnu.org>
11210
11211 * dired.c (Ffile_attributes) [WINDOWSNT]: Cast uid and gid to unsigned.
11212
112132008-04-18 Stefan Monnier <monnier@iro.umontreal.ca>
11214
11215 * character.c (Fmultibyte_char_to_unibyte):
11216 Return latin1 chars unchanged.
11217
11218 * fileio.c (Fexpand_file_name): Refine last fix so `nm' is only
11219 relocated if it points to `name'.
11220
112212008-04-17 Kenichi Handa <handa@m17n.org>
11222
11223 * data.c (Faset): Allow setting a multibyte character in an
11224 ASCII-only unibyte string.
11225
11226 * lisp.h (STRING_SET_MULTIBYTE): New macro.
11227
112282008-04-16 Stefan Monnier <monnier@iro.umontreal.ca>
11229
11230 * Makefile.in: Don't use HAVE_GTK and don't -DUSE_GTK since it's now
11231 done in config.h.
11232
112332008-04-16 Juanma Barranquero <lekktu@gmail.com>
11234
11235 * character.c (Fchar_bytes, Fchar_width, Fstring_width)
11236 (Fchar_direction): Add usage in the docstring.
11237
112382008-04-15 Chong Yidong <cyd@stupidchicken.com>
11239
11240 * keyboard.c (read_key_sequence): Remove always-true checks.
11241
112422008-04-14 Jason Rumney <jasonr@gnu.org>
11243
11244 * w32font.c (w32font_open_internal): Set max_bounds.descent in
11245 compatibility struct, for better underline positioning.
11246
112472008-04-13 David Hansen <david.hansen@gmx.net>
11248
11249 * dbusbind.c (dbus-get-unique-name): Remove extra copying of name
11250 string.
11251
112522008-04-12 Dan Nicolaescu <dann@ics.uci.edu>
11253
11254 * m/hp800.h (XUINT, XSET): Remove.
11255
112562008-04-12 Juanma Barranquero <lekktu@gmail.com>
11257
11258 * fileio.c (Fexpand_file_name): Add declaration for `p' missing in
11259 previous change.
11260
112612008-04-12 Stefan Monnier <monnier@iro.umontreal.ca>
11262
11263 * fileio.c (Fexpand_file_name): Tighten the scope of `p' and `o' vars.
11264 Relocate `nm' after calling DECODE_FILE, in case the GC was run.
11265
112662008-04-11 Stefan Monnier <monnier@iro.umontreal.ca>
11267
11268 * keymap.h (map_keymap_canonical): Declare.
11269 * xmenu.c (single_keymap_panes): Use it.
11270
112712008-04-11 Glenn Morris <rgm@gnu.org>
11272
11273 * eval.c (Fdefvaralias): If the alias is bound and the target is not,
11274 set the target's value to that of the alias.
11275
112762008-04-11 Stefan Monnier <monnier@iro.umontreal.ca>
11277
11278 * term.c (set_tty_color_mode): Left over typo.
11279
112802008-04-10 Michael Albinus <michael.albinus@gmx.de>
11281
11282 * fileio.c (Fmake_symbolic_link): Surround code by #ifdef S_IFLNK
11283 only after check for file name handler functions. Signal, when
11284 native functionality is not supported.
11285 (syms_of_fileio): Declare it unconditionally.
11286
112872008-04-10 Jason Rumney <jasonr@gnu.org>
11288
11289 * w32menu.c (is_simple_dialog, simple_dialog_show): New functions.
11290 (Fx_popup_dialog): Handle simple yes/no questions as dialogs.
11291
11292 * w32.c (logon_network_drive): Also logon to remote drives that
11293 are mapped to drive letters.
11294
112952008-04-10 Glenn Morris <rgm@gnu.org>
11296
11297 * xdisp.c (truncate-partial-width-windows): Doc fix.
11298
112992008-04-10 Stefan Monnier <monnier@iro.umontreal.ca>
11300
11301 * fileio.c (read_file_name_cleanup, Fread_file_name_internal):
11302 Move functions to minibuffer.el.
11303 (syms_of_fileio): Don't declare them.
11304
113052008-04-09 Stefan Monnier <monnier@iro.umontreal.ca>
11306
11307 * minibuf.c (Vcompletion_auto_help): Move to minibuffer.el.
11308 (syms_of_minibuf): Remove its initialization.
11309
11310 * minibuf.c (temp_echo_area_glyphs): Remove unused function.
11311
113122008-04-09 Juanma Barranquero <lekktu@gmail.com>
11313
11314 * editfns.c (Ffield_string_no_properties): Fix typo in docstring.
11315
113162008-04-09 Jason Rumney <jasonr@gnu.org>
11317
11318 * makefile.w32-in (distclean): Delete makefile too.
11319 (maintainer-clean): New target.
11320
11321 * xdisp.c (redisplay_internal) [!WINDOWSNT]: Conditionalize last change.
11322
11323 * w32term.c (w32_compute_glyph_string_overhangs): Compute overhangs
11324 for new font backend and composite cases.
11325
113262008-04-09 Jan Djärv <jan.h.d@swipnet.se>
11327
11328 * atimer.c (alarm_signal_handler): Call run_timers if not SYNC_INPUT.
11329 Most of the code moved to run_timers.
11330 (do_pending_atimers): Call run_timers.
11331 (run_timers): New function.
11332
11333 * sysdep.c (emacs_write): If SYNC_INPUT and pending_atimers,
11334 run atimers.
11335
11336 * process.c (wait_reading_process_output): The same as above.
11337
113382008-04-09 Stefan Monnier <monnier@iro.umontreal.ca>
11339
11340 * minibuf.c (last_exact_completion): Remove variable.
11341 (Fdelete_minibuffer_contents, do_completion, Fminibuffer_complete)
11342 (complete_and_exit_1, complete_and_exit_2)
11343 (Fminibuffer_complete_and_exit, Fminibuffer_complete_word)
11344 (Fdisplay_completion_list, display_completion_list_1)
11345 (Fminibuffer_completion_help, Fself_insert_and_exit)
11346 (Fexit_minibuffer, Fminibuffer_message): Move functions to
11347 minibuffer.el.
11348 (syms_of_minibuf): Remove corresponding initializations.
11349
11350 * keyboard.c (Qdeactivate_mark): New var.
11351 (command_loop_1): Use it to call `deactivate-mark'.
11352 (syms_of_keyboard): Initialize it.
11353
11354 * xdisp.c (redisplay_internal): Reset tty's color_mode when switching
11355 to another frame.
11356 * frame.c (do_switch_frame): Refine the top_frame/async_visible code.
11357 Don't call set_tty_color_mode.
11358 (store_frame_param): Reset previous_frame rather than call
11359 set_tty_color_mode.
11360 * term.c (set_tty_color_mode): Rewrite.
11361 * dispextern.h (set_tty_color_mode): New type.
11362 * termchar.h (struct tty_display_info): Add `previous_color_mode'.
11363
113642008-04-08 Stefan Monnier <monnier@iro.umontreal.ca>
11365
11366 * keymap.c (access_keymap): Remove the value 2 for t_ok which was used
11367 for generic chars, which do not exist any more in emacs-unicode.
11368
113692008-04-08 Michael Albinus <michael.albinus@gmx.de>
11370
11371 * coding.c (detect_coding_emacs_mule)
11372 (Ffind_operation_coding_system): Fix typo.
11373
113742008-04-08 Jason Rumney <jasonr@gnu.org>
11375
11376 * w32uniscribe.c (SNAME): Extract only symbol name.
11377
11378 * w32font.h (struct w32_metric_cache): New struct.
11379 (w32font_info): Use it.
11380 (W32METRIC_NO_ATTEMPT, W32METRIC_SUCCESS, W32METRIC_FAIL)
11381 (CACHE_BLOCKSIZE): New constants.
11382
11383 * w32font.c (Qja, Qko, Qzh): New symbols.
11384 (syms_of_w32font): Initialise them.
11385 (font_matches_spec): Use them to filter by language.
11386 (recompute_cached_metrics): Remove function.
11387 (compute_metrics, clear_cached_metrics): New functions.
11388 (w32font_encode_char): Use them to manage metric cache.
11389 (w32font_text_extents): Cache metrics for all glyphs on demand.
11390 Delay converting glyph indices to WORD until needed.
11391 (w32font_open_internal): Initialize metric cache to empty.
11392 (registry_to_w32_charset): Charset should always be a symbol.
11393 (fill_in_logfont, list_all_matching_fonts): Family should
11394 always be a symbol.
11395
113962008-04-06 Jason Rumney <jasonr@gnu.org>
11397
11398 * w32uniscribe.c (uniscribe_shape): Increase items buffer size.
11399 Give up if glyph indices not supported. Use uniscribe obtained
11400 ABC widths for individual metrics. Map glyph clusters back to
11401 characters using fClusterStart flag. Return number of glyphs
11402 produced, not chars processed.
11403 (uniscribe_shape): Map char at FROM to current glyph.
11404
114052008-04-05 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
11406
11407 * macmenu.c (fill_menu) [TARGET_API_MAC_CARBON]:
11408 Use SetMenuItemHierarchicalMenu.
11409
114102008-04-05 Jason Rumney <jasonr@gnu.org>
11411
11412 * image.c (pbm_load): Allow color values up to 65535.
11413 Throw an error if max_color_idx is outside the supported range.
11414 Report an error when image size is invalid.
11415 Read two bytes at a time when raw images have max_color_idx above 255.
11416
114172008-04-05 Eli Zaretskii <eliz@gnu.org>
11418
11419 * w32.c (readdir): If FindFirstFile/FindNextFile return in
11420 cFileName a file name that includes `?' characters, use the 8+3
11421 alias in cAlternateFileName instead.
11422
114232008-04-05 Kenichi Handa <handa@ni.aist.go.jp>
11424
11425 * ccl.c (ccl_driver): If ccl->quit_silently is nonzero, don't
11426 append "CCL: Quitted" when the CCL program is quitted.
11427 (setup_ccl_program): Initialize ccl->quit_silently to zero.
11428
11429 * ccl.h (struct ccl_program): New member quit_silently.
11430
114312008-04-05 Chong Yidong <cyd@stupidchicken.com>
11432
11433 * search.c (compile_pattern_1): Treat non-nil and non-string of
11434 search-spaces-regexp as nil.
11435
11436 * minibuf.c (Fassoc_string): Tweak docstring.
11437
114382008-04-05 Eli Zaretskii <eliz@gnu.org>
11439
11440 * dired.c (Ffile_attributes): Support inode numbers wider than 32
11441 bits. Remove ugly WINDOWSNT-specific kludge introduced on
11442 2008-03-14 to force inode be positive.
11443
11444 * w32.c (sys_chown, stat, fstat): Use S_* constants instead of
11445 _S_* ones, since we now use our own sys/stat.h.
11446 (stat, fstat): Don't mangle the inode number.
11447 (init_user_info): Don't restrict UID and GID to 0-60000 range.
11448
114492008-04-04 Stefan Monnier <monnier@iro.umontreal.ca>
11450
11451 * frame.h (struct frame): Give one more bit to `visible' since we use
11452 values larger than 1 to indicate obscured frames on ttys.
11453
11454 * keymap.c (Qkeymap_canonicalize): New var.
11455 (Fmap_keymap_internal): New fun.
11456 (describe_map): Use keymap-canonicalize.
11457
11458 * undo.c (last_boundary_buffer, last_boundary_position): New vars.
11459 (Fundo_boundary): Set them.
11460 (syms_of_undo): Initialize them.
11461 (record_point): Use them instead of last_point_position*.
11462 (last_undo_buffer): Change type.
11463
114642008-04-04 Jason Rumney <jasonr@gnu.org>
11465
11466 * w32font.c (w32font_text_extents): Use font's ascent and descent.
11467 (recompute_cached_metrics): Don't set ascent and descent per char.
11468
11469 * w32uniscribe.c (uniscribe_check_otf): Fix last change.
11470 (uniscribe_check_otf): Add GC protection before consing.
11471 Rearrange loop for counting features.
11472
114732008-04-03 Stefan Monnier <monnier@iro.umontreal.ca>
11474
11475 * insdel.c (insert_from_buffer_1): Don't compare bytes in destination
11476 buffer with byte-size of source buffer.
11477
114782008-04-03 Chong Yidong <cyd@stupidchicken.com>
11479
11480 * callint.c (Fcall_interactively): Handle temporary region even
11481 when shift-select-mode is off.
11482
114832008-04-03 Jason Rumney <jasonr@gnu.org>
11484
11485 * w32uniscribe.c (uniscribe_check_otf): Sanity check otf_spec.
11486
114872008-04-03 Kenichi Handa <handa@m17n.org>
11488
11489 * coding.c (CATEGORY_MASK_ANY): Add CATEGORY_MASK_UTF_16_AUTO.
11490 (CATEGORY_MASK_UTF_16): Likewise.
11491 (detect_coding_utf_16): Add heuristics to reject utf-16 for a
11492 binary file.
11493 (detect_coding): Add null-byte detection for a binary file.
11494 (detect_coding_system): Likewise.
11495
114962008-04-03 Jason Rumney <jasonr@gnu.org>
11497
11498 * w32uniscribe.c: New file.
11499
11500 * font.h (uniscribe_font_driver) [WINDOWSNT]: Declare for w32fns.c.
11501
11502 * w32font.h (uniscribe_check_otf): Declare for w32font.c.
11503
11504 * w32font.c (Qbalinese, Qbuginese, Qbuhid, Qcuneiform, Qcypriot)
11505 (Qdeseret, Qglagolitic, Qgothic, Qhanunoo, Qkharoshthi)
11506 (Qlimbu, Qlinear_b, Qold_italic, Qold_persian, Qosmanya)
11507 (Qphags_pa, Qphoenician, Qshavian, Qsyloti_nagri)
11508 (Qtagalog, Qtagbanwa, Qtai_le, Qtifinagh, Qugaritic)
11509 (Qphonetic): New symbols.
11510 (syms_of_w32font): Initialize them.
11511 (font_supported_scripts): Use them.
11512 (w32font_list_family): List all charsets.
11513 (w32font_text_extents, recompute_cached_metrics): Fix metric
11514 calculations.
11515 (w32_enumfont_pattern_entity): Make full_type a DWORD.
11516 Give opentype fonts their own format.
11517 (font_matches_spec): New arguments backend and logfont.
11518 Handle :otf spec for uniscribe backend.
11519 (add_font_entity_to_list): Match truetype fonts in uniscribe backend.
11520 (fill_in_logfont): Use DEFAULT_CHARSET when charset not supplied.
11521
11522 * w32fns.c (Fx_create_frame): Conditionally register uniscribe
11523 font backend.
11524 (globals_of_w32fns): Initialize uniscribe font backend.
11525
11526 * makefile.w32-in (CONFIG_H): New variable. Use it to clean up
11527 dependencies.
11528 (w32uniscribe.$(O)): New file to build.
11529 (FONT_OBJ): Include w32uniscribe.$(O).
11530 (LIBS): Add uniscribe libraries.
11531
11532 * ftfont.c (ftfont_get_open_type_spec): Check spec->script, not val.
11533
115342008-04-02 Chong Yidong <cyd@stupidchicken.com>
11535
11536 * callint.c (Vshift_select_mode): New var.
11537 (Finteractive): Document new ^ spec.
11538 (Fcall_interactively): Call handle-shift-selection if the ^ spec
11539 is present.
11540
11541 * keyboard.c (Vthis_command_keys_shift_translated): New var.
11542 (command_loop_1): Avoid running the direct display versions of
11543 forward-char and backward-char if shift-selection may occur.
11544 (read_key_sequence): Set Vthis_command_keys_shift_translated if
11545 shift-translation takes place.
11546
11547 * buffer.c (Vtransient_mark_mode): Move docstring to simple.el to
11548 avoid clobbering by define-minor-mode.
11549
11550 * cmds.c (Fforward_char, Fbackward_char, Fforward_line)
11551 (Fbeginning_of_line, Fend_of_line): Add ^ interactive spec.
11552
11553 * syntax.c (Fforward_word): Add ^ interactive spec.
11554
11555 * window.c (Fscroll_up, Fscroll_down, Fscroll_left)
11556 (Fscroll_right): Add ^ interactive spec.
11557
115582008-04-01 Stefan Monnier <monnier@iro.umontreal.ca>
11559
11560 * xdisp.c (try_window_id): Don't forget to reset delta_bytes.
11561
11562 * casefiddle.c (casify_object): Fix up int/EMACS_INT mixup.
11563
11564 * charset.c (Funibyte_charset, Fset_unibyte_charset): Remove.
11565
115662008-03-31 Juri Linkov <juri@jurta.org>
11567
11568 * window.c (Fdisplay_buffer): Reinitialize `tem' to nil.
11569
115702008-03-30 Jan Djärv <jan.h.d@swipnet.se>
11571
11572 * gtkutil.c (xg_set_geometry): Fix indentation.
11573 (xg_resize_outer_widget): Remove.
11574 (x_wm_size_hint_off): Fix indentation.
11575 (xg_frame_set_char_size): Call flush_and_sync after
11576 gtk_window_resize.
11577 (x_wm_set_size_hint): Pass NULL as geometry window to
11578 gtk_window_set_geometry_hints due to Gtk+ bug nr 68668.
11579 Add menu bar and tool bar height to base height.
11580 (xg_update_frame_menubar, free_frame_menubar)
11581 (xg_tool_bar_detach_callback, xg_tool_bar_attach_callback)
11582 (update_frame_tool_bar, free_frame_tool_bar):
11583 Change xg_resize_outer_widget to xg_frame_set_char_size.
11584
115852008-03-30 Michael Albinus <michael.albinus@gmx.de>
11586
11587 * dbusbind.c (QCdbus_timeout): New D-Bus internal symbol.
11588 (Fdbus_call_method): New parameter TIMEOUT.
11589 (dbus-send-signal): Optimize UNGCPRO call.
11590
115912008-03-29 Juri Linkov <juri@jurta.org>
11592
11593 * window.c (Fdisplay_buffer): Move call to
11594 Vsplit_window_preferred_function out of conditions that check
11595 if window is eligible for vertical splitting.
11596 When Vsplit_window_preferred_function is non-nil, call it and use
11597 its non-nil return value as window. Otherwise, continue doing
11598 vertical splitting using Fsplit_window with arg horflag=nil.
11599 (syms_of_window) <Vsplit_window_preferred_function>: Change the
11600 default value from `split-window' to nil.
11601
116022008-03-29 Juri Linkov <juri@jurta.org>
11603
11604 * callint.c (Fcall_interactively): Revert 2008-03-16 change
11605 for interactive code letters 'b' and 'B'.
11606
116072008-03-29 Eli Zaretskii <eliz@gnu.org>
11608
11609 * fileio.c (Fexpand_file_name): Convert the value of $HOME to a
11610 multibyte string.
11611
116122008-03-29 Stefan Monnier <monnier@iro.umontreal.ca>
11613
11614 * keyboard.c (pending_funcalls): New var.
11615 (timer_check): Run it.
11616 (syms_of_keyboard): Initialize it.
11617 * terminal.c (Qrun_hook_with_args, Qdelete_terminal_functions)
11618 (Vdelete_terminal_functions): New vars.
11619 (syms_of_terminal): Initialize them.
11620 (Fdelete_terminal): Run delete-terminal-functions.
11621 * xdisp.c (safe_eval): Rewrite.
11622 (safe_call2): New fun.
11623 * frame.c (Qdelete_frame_functions): New var.
11624 (syms_of_frame): Initialize it.
11625 (Fdelete_frame): Use it and use safe_call2 and pending_funcalls.
11626 * lisp.h (safe_call2, pending_funcalls): Declare.
11627
116282008-03-28 Andreas Schwab <schwab@suse.de>
11629
11630 * indent.c (Fmove_to_column): Move declaration before statements.
11631
116322008-03-27 Stefan Monnier <monnier@iro.umontreal.ca>
11633
11634 * frame.h (enum fullscreen_type): Give it a name. Move it before use.
11635 (struct frame): Use bit fields for boolean vars.
11636
11637 * process.c (server_accept_connection): Simplify naming.
11638 (emacs_get_tty_pgrp): Use SDATA.
11639
11640 * coding.c (decode_coding_object): Fix last change.
11641
116422008-03-27 Jason Rumney <jasonr@gnu.org>
11643
11644 * w32fns.c (start_hourglass): Suppress hourglass on tty frames.
11645
116462008-03-27 Kenichi Handa <handa@ni.aist.go.jp>
11647
11648 * charset.c (Fdefine_charset_internal): Change the way of
11649 registering charsets in Vcharset_order_list.
11650 (syms_of_charset): Make the charset `eight-bit' supplementary.
11651
116522008-03-26 Alexandre Oliva <aoliva@redhat.com> (tiny change)
11653
11654 * regex.c (EXTEND_BUFFER): Change order of pointer addition
11655 operations, to avoid having the difference between pointers
11656 overflow.
11657
116582008-03-26 Stefan Monnier <monnier@iro.umontreal.ca>
11659
11660 * indent.c (check_display_width): New fun.
11661 (scan_for_column): Use it.
11662
11663 * data.c (syms_of_data): Mark most-positive-fixnum and
11664 most-negative-fixnum as constants.
11665
11666 * xdisp.c (redisplay_internal): Reset selected_frame earlier.
11667
11668 * indent.c (scan_for_column): Extract from current_column_1.
11669 Merge with the same code from Fmove_to_column.
11670 (current_column_1, Fmove_to_column): Use it.
11671
116722008-03-25 Stefan Monnier <monnier@iro.umontreal.ca>
11673
11674 * keymap.c (map_keymap_internal): New fun.
11675 (map_keymap): Use it.
11676 (Fmap_keymap_internal): New fun.
11677 (Fmap_keymap): Remove left-out test from before make_save_value.
11678
11679 * keymap.c (Fmap_keymap): Use `map-keymap-sorted.
11680
11681 * frame.c (Fmodify_frame_parameters, x_set_frame_parameters):
11682 Use XCAR/XCDR.
11683
11684 * process.h (struct Lisp_Process): Remove filter_multibyte.
11685 * process.c (QCfilter_multibyte): Remove.
11686 (setup_process_coding_systems): Don't use filter_multibyte.
11687 (Fstart_process, Fmake_network_process): Don't set filter_multibyte.
11688 (read_process_output): Don't adjust multibyteness to filter_multibyte.
11689 (Fset_process_filter_multibyte): Change the coding-system to
11690 approximate the previous behavior.
11691 (Fprocess_filter_multibyte_p): Get the multibyteness straight from the
11692 coding-system.
11693
11694 * coding.c (decode_coding_object): When not decoding into a buffer,
11695 obey the coding system's preference of (uni|multi)byte.
11696
116972008-03-24 Stefan Monnier <monnier@iro.umontreal.ca>
11698
11699 * casefiddle.c (casify_object): Avoid pathological N^2 worst case if
11700 every char is changed and has a different byte-length.
11701 (Fupcase_word, Fdowncase_word, Fcapitalize_word, operate_on_word):
11702 Fix int -> EMACS_INT.
11703
117042008-03-23 David Hansen <david.hansen@gmx.net>
11705
11706 * dbusbind.c (xd_read_message): Remove extra copying of message
11707 strings. Check for NULL `interface' or `member'.
11708
117092008-03-22 Eli Zaretskii <eliz@gnu.org>
11710
11711 * w32.c (readdir): If FindFirstFile/FindNextFile return in
11712 cFileName a file name that includes `?' characters, use the 8+3
11713 alias in cAlternateFileName instead.
11714
117152008-03-21 Stefan Monnier <monnier@iro.umontreal.ca>
11716
11717 * buffer.c (enlarge_buffer_text): Fix int -> EMACS_INT.
11718
117192008-03-20 Stefan Monnier <monnier@iro.umontreal.ca>
11720
11721 * intervals.c (temp_set_point, temp_set_point_both): Use EMACS_INT.
11722 (set_point, set_point_both): Use EMACS_INT. Remove `buffer' arg,
11723 work on current_buffer only instead (that was already the case
11724 for some of the code anyway).
11725 * buffer.h (set_point, set_point_both): Remove buffer arg, use long int.
11726 (temp_set_point, temp_set_point_both): Use EMACS_INT.
11727 (SET_PT, SET_PT_BOTH): Adjust.
11728 * intervals.h (set_point, temp_set_point, set_point_both)
11729 (temp_set_point_both): Remove redundant declarations.
11730
117312008-03-20 Stefan Monnier <monnier@iro.umontreal.ca>
11732
11733 * fileio.c (Finsert_file_contents):
11734 * lread.c (Feval_buffer): Use BUF_TEMP_SET_PT.
11735 * buffer.h (BUF_SET_PT): Remove. set_point_both doesn't work right
11736 when buffer != current_buffer anyway.
11737
117382008-03-20 Andreas Schwab <schwab@suse.de>
11739
11740 * callint.c (Fcall_interactively) [case 'B']: Use other-buffer
11741 as default.
11742
117432008-03-19 Jason Rumney <jasonr@gnu.org>
11744
11745 * w32fns.c (hourglass_timer, hourglass_hwnd): New variables.
11746 (syms_of_w32fns): Initialize them.
11747 (HOURGLASS_ID): New constant.
11748 (x_window_to_frame): Don't check hourglass_window.
11749 (w32_wnd_proc) <WM_TIMER>: Handle hourglass_timer.
11750 (w32_wnd_proc) <WM_EXITMENULOOP>: Set pending hourglass cursor.
11751 (w32_wnd_proc) <WM_SETCURSOR>: Set the hourglass or current cursor.
11752 (w32_wnd_proc) <WM_EMACS_SETCURSOR>: Set frame's current_cursor.
11753 Only change the cursor if hourglass is not active.
11754 (Fx_create_frame): Initialize frame's current_cursor.
11755 (hourglass_atimer): Remove.
11756 (hourglass_started): New function.
11757 (start_hourglass, cancel_hourglass, hide_hourglass): Adapt to w32.
11758 (show_hourglass): Adapt to w32, changing argument to frame.
11759
11760 * w32term.h (struct w32_output): Remove hourglass_window.
11761 Add current_cursor.
11762
11763 * eval.c (call_debugger, Fsignal):
11764 * keyboard.c (recursive_edit_1, cmd_error, Ftop_level)
11765 (command_loop_1, Fread_key_sequence, Fread_key_sequence_vector)
11766 (Fexecute_extended_command, cancel_hourglass_unwind):
11767 * minibuf.c (read_minibuf):
11768 * fns.c (Fy_or_n_p): Enable hourglass when HAVE_WINDOW_SYSTEM.
11769
117702008-03-19 Stefan Monnier <monnier@iro.umontreal.ca>
11771
11772 * window.c (run_funs): New fun.
11773 (run_window_configuration_change_hook): Use it to run the buffer-local
11774 and the global part of the hook.
11775
11776 * xdisp.c (format_mode_line_unwind_data): Add window argument.
11777 (unwind_format_mode_line): Restore selected window.
11778 (x_consider_frame_title, Fformat_mode_line): Set selected window.
11779
117802008-03-17 Stefan Monnier <monnier@iro.umontreal.ca>
11781
11782 * editfns.c (Fchar_equal): Check they are valid characters.
11783
11784 * buffer.h (Fbuffer_list): Declare (for use in callint.c).
11785
117862008-03-17 Andreas Schwab <schwab@suse.de>
11787
11788 * regex.c (re_match_2_internal): Properly match raw 8-bit bytes
11789 against a charset.
11790
11791 * lisp.h (Fbuffer_list): Declare.
11792
117932008-03-17 Jan Djärv <jan.h.d@swipnet.se>
d6c952f8 11794
aac0c6e3
MR
11795 * gtkutil.c (free_frame_tool_bar): Only call gtk_container_remove if
11796 handlebox_widget is != 0.
11797
117982008-03-16 Juri Linkov <juri@jurta.org>
11799
11800 * callint.c (Fcall_interactively): For interactive code letters
11801 'b' and 'B' put the buffer list into the list of default "future"
11802 values of the minibuffer.
11803
118042008-03-16 Andreas Schwab <schwab@suse.de>
11805
11806 * keyboard.c (read_key_sequence): Fix downcasing of letters with
11807 modifiers.
11808
11809 * regex.c (re_match_2_internal): Correct matching of a charset
11810 against latin-1 characters.
11811
118122008-03-16 Kenichi Handa <handa@m17n.org>
11813
11814 * coding.c (CHAR_STRING_ADVANCE_NO_UNIFY)
11815 (STRING_CHAR_ADVANCE_NO_UNIFY): New macros.
11816 (coding_alloc_by_making_gap): Fix the way to preserve data in the gap.
11817 (alloc_destination): Fix the 2nd arg to coding_alloc_by_making_gap.
11818 (encode_coding_utf_8): Use CHAR_STRING_ADVANCE_NO_UNIFY instead of
11819 CHAR_STRING_ADVANCE.
11820 (produce_chars): Fix for the case that the source and the
11821 destination are the same buffer. Use CHAR_STRING_ADVANCE_NO_UNIFY
11822 instead of CHAR_STRING_ADVANCE.
11823 (consume_chars): Use STRING_CHAR_ADVANCE_NO_UNIFY instead of
11824 STRING_CHAR_ADVANCE.
11825
118262008-03-15 Andreas Schwab <schwab@suse.de>
11827
11828 * regex.c (re_match_2_internal): Correct matching of eight bit
11829 characters in unibyte strings.
11830
118312008-03-15 Martin Rudalics <rudalics@gmx.at>
11832
11833 * buffer.c (overlays_in, Foverlays_in): Include empty overlays
11834 at end of range when it coincides with the end of the buffer.
11835
118362008-03-14 Eli Zaretskii <eliz@gnu.org>
11837
11838 * dired.c (Ffile_attributes) [WINDOWSNT]: Force inode be positive.
11839
11840 * w32fns.c (globals_of_w32fns, Fx_create_frame): Fix last change.
11841
118422008-03-14 Jason Rumney <jasonr@gnu.org>
11843
11844 * editfns.c (initial_tz): New variable.
11845 (syms_of_editfns): Initialize it.
11846 (Fset_time_zone_rule): Set it when first called.
11847 Use it when TZSTRING is nil.
11848
11849 * w32fns.c (MONITOR_DEFAULT_TO_NEAREST, struct MONITOR_INFO)
11850 (MonitorFromPoint_Proc, GetMonitorInfo_Proc): New definitions.
11851 (monitor_from_point_fn, get_monitor_info_fn): New globals.
11852 (globals_of_w32fns): Initialize them.
11853 (compute_tip_xy): Use them to position tooltips.
11854
118552008-03-14 Glenn Morris <rgm@gnu.org>
11856
11857 * emacs.c (main): Revert previous change.
11858 (standard_args): Revert -internal-script back to -scriptload,
11859 and remove the long-option form.
11860
118612008-03-13 Glenn Morris <rgm@gnu.org>
11862
11863 * emacs.c (main, standard_args): Rename -scriptload to -internal-script.
11864 Remove option -enable-font-backend.
11865
118662008-03-12 Stefan Monnier <monnier@iro.umontreal.ca>
11867
11868 * buffer.c (Fswitch_to_buffer): Fall back on pop-to-buffer.
11869
118702008-03-11 Jan Djärv <jan.h.d@swipnet.se>
11871
11872 * xterm.c (x_connection_closed): For GTK: If this is the last
11873 terminal just exit without closing the display.
11874
118752008-03-11 Jason Rumney <jasonr@gnu.org>
11876
11877 * w32font.c (w32font_full_name): Use floor to round.
11878
f0131492 118792008-03-10 Dhruva Krishnamurthy <dhruvakm@gmail.com> (tiny change)
aac0c6e3
MR
11880
11881 * sound.c (alsa_configure): Declare vol at beginning of block.
11882
11883 * fontset.c (Ffontset_info): Remove extra semicolon.
11884
118852008-03-10 Stefan Monnier <monnier@iro.umontreal.ca>
11886
11887 * fileio.c (Fsubstitute_in_file_name): Fix up computation of maximum
11888 size of resulting string.
11889
118902008-03-10 Jason Rumney <jasonr@gnu.org>
11891
11892 * dispnew.c (adjust_glyph_matrix): Initialize window_height.
11893
118942008-03-10 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
11895
11896 * xdisp.c (handle_single_display_spec): Undo 2007-10-16 changes.
11897 Don't pretend as if characters with display property haven't been
11898 consumed for string-replacing-string case.
11899
119002008-03-08 Kim F. Storm <storm@cua.dk>
11901
11902 * xdisp.c (GET_NEXT_DISPLAY_ELEMENT): New macro.
11903 (get_next_display_element, next_element_from_string)
11904 (next_element_from_ellipsis, next_element_from_buffer): Use it.
11905
119062008-03-08 Andreas Schwab <schwab@suse.de>
11907
11908 * process.h (struct Lisp_Process): Declare bit fields as unsigned.
11909
119102008-03-06 Jason Rumney <jasonr@gnu.org>
11911
11912 * w32font.c (w32_registry): Take font_type argument. Use ANSI
11913 when charset not specified. Only translate ANSI to unicode when
11914 font_type is truetype.
11915 (w32font_coverage_ok): New function.
11916 (add_font_entity_to_list): Use it to filter unsuitable fonts.
11917
119182008-03-05 Kenichi Handa <handa@ni.aist.go.jp>
11919
11920 * lread.c (Fread_char): Resolve modifiers.
11921 (Fread_char_exclusive): Likewise.
11922
11923 * character.c (char_resolve_modifier_mask): New function.
11924 (char_string): Use char_resolve_modifier_mask.
11925 (Fchar_resolve_modifiers): New function.
11926 (syms_of_character): Declare Fchar_resolve_modifiers as Lisp
11927 function.
11928
119292008-03-04 Jason Rumney <jasonr@gnu.org>
11930
11931 * makefile.w32-in: Always include w32font.c in the build.
11932 * w32font.c: Wrap in USE_FONT_BACKEND conditional.
11933
119342008-03-04 Andreas Schwab <schwab@suse.de>
11935
11936 * Makefile.in (clean): Remove emacs-*.*.* instead of emacs-*.
11937 (versionclean): Likewise.
11938
119392008-03-04 Juanma Barranquero <lekktu@gmail.com>
11940
11941 * .cvsignore: Add oo.
11942
119432008-03-03 Andreas Schwab <schwab@suse.de>
11944
11945 * coding.c (decode_coding_object): Inhibit gap shrinking while
11946 decoding in place.
11947
119482008-03-03 Dan Nicolaescu <dann@ics.uci.edu>
11949
11950 * w32term.c: Remove unused include "gnu.h".
11951 * makefile.w32-in (w32term.o): Don't depend on gnu.h.
11952
11953 * gnu.h: Rename to ...
11954 * emacs-icon.h: ... this.
11955 * xterm.c: Use emacs-icon.h instead of gnu.h.
11956 * Makefile (xterm.o): Depend on emacs-icon.h, not gnu.h.
11957
119582008-03-03 Juanma Barranquero <lekktu@gmail.com>
11959
11960 * w32font.c: Include math.h.
11961
119622008-03-03 Jason Rumney <jasonr@gnu.org>
11963
11964 * w32font.c (recompute_cached_metrics): Change font arg to w32font_info.
11965 Compute options separately.
11966 (w32font_open_internal): Set glyph_idx before caching metrics.
11967
11968 * w32font.h (NTM_PS_OPENTYPE, NTM_TT_OPENTYPE, NTM_TYPE1):
11969 Define if system headers don't.
11970 (struct w32font_info): Enlarge ascii_metrics. Add glyph_idx.
11971 (w32font_encode_char): Don't declare here.
11972
11973 * w32font.c (Quniscribe, QCformat): New symbols.
11974 (syms_of_w32font): Define them.
11975 (w32font_has_char): Indicate uncertainty.
11976 (w32font_encode_char): Encode as glyph point. Make static.
11977 (recompute_cached_metrics): New function.
11978 (w32font_open_internal): Use it. Set font to use glyph points
11979 initially. Set format based on type of font.
11980 (w32font_text_extents, w32font_draw): Optionally use glyph points.
11981 (w32_enumfont_pattern_entity): Accept backend arg. Set type based
11982 on it. Set format based on information available here.
11983 (add_font_entity_to_list): Identify backend based on opentype_only.
11984
119852008-03-02 Andreas Schwab <schwab@suse.de>
11986
11987 * ftfont.c (ftfont_pattern_entity): Fix aliasing violations.
11988
11989 * coding.c (decode_coding_big5, produce_chars):
11990 Fix typos in last change.
11991
119922008-03-02 Kentaro Ohkouchi <nanasess@fsm.ne.jp>
11993
11994 * gnu.h: New icon.
11995
119962008-03-02 Kenichi Handa <handa@m17n.org>
11997
11998 * coding.c (decode_coding_utf_8): When eol-type of CODING is
11999 `dos', don't decode '\r' if that is the last in the source.
12000 (decode_coding_utf_16, decode_coding_emacs_mule)
12001 (decode_coding_iso_2022, decode_coding_sjis, decode_coding_big5)
12002 (decode_coding_raw_text, decode_coding_charset): Likewise.
12003 (produce_chars): Don't decode EOL here. Use EMACS_INT.
12004
120052008-03-01 Jason Rumney <jasonr@gnu.org>
12006
12007 * w32font.c (w32font_full_name): Report point size for scalable fonts.
12008
120092008-03-01 Kim F. Storm <storm@cua.dk>
12010
12011 * dispextern.h (CHAR_GLYPH_SPACE_P): Check for default face.
12012
120132008-03-01 Jason Rumney <jasonr@gnu.org>
12014
12015 * w32font.c (w32font_full_name): New function.
12016 (w32font_open_internal): Use it.
12017
120182008-03-01 Kim F. Storm <storm@cua.dk>
12019
12020 * dispnew.c (line_draw_cost): Fix invalid glyph check.
12021
120222008-03-01 Jason Rumney <jasonr@gnu.org>
12023
12024 * font.c (font_unparse_fcname): Increase len when style is a symbol.
12025
120262008-03-01 Jan Djärv <jan.h.d@swipnet.se>
12027
12028 * xterm.c (handle_one_xevent): For Gtk+ and ConfigureNotify, call
12029 xg_frame_resized when the event is for the edit widget.
12030
12031 * gtkutil.h (xg_frame_resized): Renamed from xg_resize_widgets.
12032
12033 * gtkutil.c (xg_resize_outer_widget): Only do one of set_geometry or
12034 set_char_size.
12035 (xg_frame_resized): Renamed from xg_resize_widgets. Remove all
12036 operations on widgets here. Just set frame size if needed.
12037 (flush_and_sync, x_wm_size_hint_off, xg_pack_tool_bar): New functions.
12038 (xg_frame_set_char_size): Call x_wm_size_hint_off before resizing.
12039 (x_wm_set_size_hint): Set size hints on the edit widget only, not
12040 the whole frame.
12041 (xg_create_tool_bar): Move attachment of the tool bar to
12042 xg_pack_tool_bar. Do not attach the tool bar if there are no items.
12043 (free_frame_tool_bar): Remove call to SET_FRAME_GARBAGED.
12044
120452008-03-01 Jason Rumney <jasonr@gnu.org>
12046
12047 * w32fns.c (w32_msg_pump): Disable debug code.
12048
120492008-03-01 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
12050
12051 * m/intel386.h [MAC_OSX || DARWIN]: Define NO_ARG_ARRAY if _LP64.
12052
120532008-02-29 Chong Yidong <cyd@stupidchicken.com>
12054
12055 * xdisp.c (next_overlay_string): Don't set
12056 overlay_strings_at_end_processed_p if we're currently reading from
12057 a display string.
12058
120592008-02-29 Stefan Monnier <monnier@iro.umontreal.ca>
12060
12061 * xdisp.c (get_overlay_strings_1): Fix typo.
12062
120632008-02-29 Chong Yidong <cyd@stupidchicken.com>
12064
12065 * xdisp.c (get_overlay_strings_1): Add missing argument type.
12066
120672008-02-28 Kenichi Handa <handa@ni.aist.go.jp>
12068
12069 * ftfont.c (ftfont_match): Explicitly set pixelsize in pattern.
12070
12071 * xdisp.c (display_mode_element): Cancel the previous change.
12072 (decode_mode_spec): Likewise.
12073 (handle_auto_composed_prop): Don't make composition if it->string
12074 is a string.
12075
120762008-02-27 Kim F. Storm <storm@cua.dk>
12077
12078 * lisp.h (GLYPH): Change type from int to struct with separate char
12079 and face_id members.
12080 (GLYPH_MASK_FACE, GLYPH_MASK_CHAR): Delete macros.
12081 (GLYPH_CHAR, GLYPH_FACE): Remove slow versions with frame arg.
12082 (FAST_GLYPH_CHAR, FAST_GLYPH_FACE): Rename macros to ...
12083 (GLYPH_CHAR, GLYPH_FACE): ... these. Change users.
12084 (FAST_MAKE_GLYPH, MAKE_GLYPH): Remove. Rewrite users to use ...
12085 (SET_GLYPH, SET_GLYPH_CHAR, SET_GLYPH_FACE): ... these macros instead.
12086 (GLYPH_CODE_CHAR, GLYPH_CODE_FACE, GLYPH_CODE_P)
12087 (GLYPH_CODE_CHAR_VALID_P, SET_GLYPH_FROM_GLYPH_CODE): New macros to
12088 handle new Lisp glyph code encoding, either an integer or a cons.
12089
12090 * disptab.h (GLYPH_SIMPLE_P): Rewrite.
12091 (GLYPH_ALIAS): Delete.
12092 (GLYPH_ALIAS_P, GLYPH_FOLLOW_ALIASES): Rewrite.
12093 (GLYPH_LENGTH, GLYPH_STRING): Use GLYPH_CHAR.
12094 (GLYPH_FROM_CHAR): Replace macro by ...
12095 (SET_GLYPH_FROM_CHAR): ... this macro. Change users.
12096
12097 * dispextern.h (CHAR_GLYPH_SPACE_P): Simplify.
12098 (GLYPH_FROM_CHAR_GLYPH): Replace macro by ...
12099 (SET_GLYPH_FROM_CHAR_GLYPH): ... this macro. Change users.
12100 (GLYPH_INVALID_P): New macro.
12101 (spec_glyph_lookup_face): Update prototype.
12102
12103 * dispnew.c (line_draw_cost): Adapt to new glyph type.
12104 (build_frame_matrix_from_leaf_window): Adapt to new glyph type and
12105 new glyph code encoding.
12106 (spec_glyph_lookup_face): No return value; update passed glyph instead.
12107 (init_display): Use SET_CHAR_GLYPH to initialize space_glyph.
12108
12109 * xdisp.c (get_next_display_element, next_element_from_display_vector):
12110 Adapt to new glyph type and new glyph code encoding.
12111
12112 * term.c (encode_terminal_code, produce_special_glyphs): Likewise.
12113
12114 * indent.c (current_column, current_column_1, Fmove_to_column)
12115 (compute_motion): Adapt to new glyph code encoding.
12116
12117 * msdos.c (IT_write_glyphs): Adapt to new glyph type.
12118
121192008-02-27 Chong Yidong <cyd@stupidchicken.com>
12120
12121 * process.c (wait_reading_process_output): Check for window
12122 changes caused by timers.
12123 Suggested by Johan Bockgård.
12124
121252008-02-27 Glenn Morris <rgm@gnu.org>
12126
12127 * emacs.c (USAGE1): Add `--disable-font-backend'.
12128
121292008-02-27 Stefan Monnier <monnier@iro.umontreal.ca>
12130
12131 * fileio.c (Finsert_file_contents): Don't reset undo_list if no change
12132 is made to the buffer.
12133
121342008-02-26 Stefan Monnier <monnier@iro.umontreal.ca>
12135
12136 * dispextern.h (face_at_buffer_position, face_for_overlay_string)
12137 (face_at_string_position):
12138 * xfaces.c (face_at_buffer_position, face_for_overlay_string)
12139 (face_at_string_position):
12140 * xdisp.c (display_string, next_overlay_change):
12141 * buffer.h (overlays_at):
12142 * buffer.c (overlays_at): Use EMACS_INT for buffer positions.
12143 Update callers.
12144
121452008-02-26 Chong Yidong <cyd@stupidchicken.com>
12146
12147 * editfns.c (Fformat): Doc fix.
12148
121492008-02-26 Juanma Barranquero <lekktu@gmail.com>
12150
12151 * font.c (Ffont_spec, Ffont_at): Fix typos in docstrings.
12152 (Ffont_put, Flist_families, Ffont_fill_gstring, Ffont_drive_otf)
12153 (Ffont_otf_alternates, Fquery_font): Doc fixes.
12154
121552008-02-25 Stefan Monnier <monnier@iro.umontreal.ca>
12156
12157 * buffer.c (Fbuffer_swap_text): New function.
12158 (syms_of_buffer): Defsubr it.
12159
121602008-02-25 Chong Yidong <cyd@stupidchicken.com>
12161
12162 * keyboard.c (command_loop_1): Revert 2006-10-09 change.
12163
121642008-02-25 Jason Rumney <jasonr@gnu.org>
12165
12166 * w32font.c (w32font_draw): Draw one character at a time when padding.
12167
121682008-02-25 Stefan Monnier <monnier@iro.umontreal.ca>
12169
12170 * window.c (Fdelete_window, Fadjust_window_trailing_edge):
12171 Handle a nil arg. Use run_window_configuration_change_hook.
12172 (delete_window, adjust_window_trailing_edge): Don't handle nil any more.
12173 (Fenlarge_window, Fshrink_window, Fset_window_configuration):
12174 Use run_window_configuration_change_hook.
12175
121762008-02-25 Kenichi Handa <handa@ni.aist.go.jp>
12177
12178 * xdisp.c (x_produce_glyphs): For a visible glyph, assure at least
12179 1-pixel width.
12180
121812008-02-25 Kenichi Handa <handa@ni.aist.go.jp>
12182
12183 * xdisp.c (fill_glyph_string): Pay attention to glyph->padding_p.
12184 (append_glyph): Set glyph->pixel_width and glyph->padding_p to 1
12185 if the glyph in the font is zero pixel with.
12186
12187 * dispextern.h (struct glyph_string): New member padding_p.
12188
12189 * w32font.c (w32font_draw): Pay attention to s->padding_p.
12190
12191 * ftxfont.c (ftxfont_draw): Pay attention to s->padding_p.
12192
12193 * xfont.c (xfont_draw): Pay attention to s->padding_p.
12194
12195 * xftfont.c (xftfont_draw): Pay attention to s->padding_p.
12196
12197 * font.c: If the font driver doesn't have `shape' function, return Qnil.
12198
121992008-02-25 Jason Rumney <jasonr@gnu.org>
12200
12201 * w32fns.c (enum_font_cb2): Don't use raster fonts for Unicode.
12202
122032008-02-24 Stefan Monnier <monnier@iro.umontreal.ca>
12204
12205 Allow fine-grained image-cache flushing.
12206 * dispextern.h (struct image): Add `dependencies' field.
12207 (clear_image_caches): Change arg to Lisp_Object.
12208 * image.c (make_image): Initialize `dependencies' field.
12209 (clear_image_cache): Change arg to allow fine-grained flushing.
12210 Perform the flush even if image-cache-eviction-delay is nil.
12211 (clear_image_caches): Change arg to Lisp_Object.
12212 (Fclear_image_cache): Expand meaning of the argument.
12213 (mark_image): Mark `dependencies' field.
12214 * xfaces.c (clear_face_cache): Adapt arg to call to clear_image_caches.
12215 (lface_hash): Use XHASH rather than XFASTINT.
12216 (face_at_buffer_position): Fix int -> EMACS_INT position.
12217 * xdisp.c (next_overlay_change): Fix int -> EMACS_INT position.
12218 (select_frame_for_redisplay): Remove code duplication.
12219 (redisplay_internal): Adapt arg to call to clear_image_caches.
12220
122212008-02-24 Dan Nicolaescu <dann@ics.uci.edu>
12222
12223 * s/vms4-0.h:
12224 * s/vms4-2.h:
12225 * s/vms4-4.h:
12226 * s/vms5-5.h: Remove, unused.
12227
12228 * s/irix5-2.h:
12229 * s/irix6-0.h:
12230 * s/riscos5.h:
12231 * s/mach-bsd4-3.h:
12232 * m/mips4.h: Remove files for obsolete systems.
12233
12234 * Makefile.in:
12235 * filelock.c:
12236 * unexmips.c:
12237 * m/hp9000s300.h:
12238 * m/iris4d.h:
12239 * s/aix3-1.h:
12240 * s/hpux.h:
12241 * s/msdos.h:
12242 * s/usg5-0.h:
12243 * s/usg5-2-2.h:
12244 * s/usg5-2.h:
12245 * s/usg5-3.h: Remove references to obsolete variables.
12246
12247 * s/irix5-0.h: Remove, move all the contents ...
12248 * s/irix6-5.h: ... here. Simplify.
12249 * config.in: Regenerate.
12250
122512008-02-24 Jason Rumney <jasonr@gnu.org>
12252
12253 * w32term.c (x_draw_glyph_string_background): Clear the background
12254 manually when cleartype is in use.
12255 (x_draw_glyph_string_foreground): Draw text transparently when
12256 cleartype is in use.
12257
12258 * w32font.c (w32font_text_extents): Avoid getting HDC and selecting
12259 a font into it unless we have to.
12260
122612008-02-19 Stefan Monnier <monnier@iro.umontreal.ca>
12262
12263 * intervals.h (INT_LISPLIKE): Remove. It may misfire.
12264 (NULL_INTERVAL_P, SET_INTERVAL_PARENT): Don't use it.
d6c952f8 12265
aac0c6e3
MR
122662008-02-18 Jason Rumney <jasonr@gnu.org>
12267
12268 * w32fns.c (Fw32_shell_execute): Encode parameters.
12269
122702008-02-09 Eli Zaretskii <eliz@gnu.org>
12271
12272 * fileio.c (syms_of_fileio) <insert-default-directory>: Doc fix.
12273
122742008-02-05 Juanma Barranquero <lekktu@gmail.com>
12275
12276 * unexhp9k800.c (read_header): Replace `legal' with `valid'.
12277
122782008-02-24 Ulrich Neumerkel <ulrich@complang.tuwien.ac.at> (tiny change)
12279
12280 * xterm.c (x_set_offset): Don't change the gravity if
12281 CHANGE_GRAVITY is -1.
12282
122832008-02-23 Chong Yidong <cyd@stupidchicken.com>
12284
12285 * fileio.c (auto_save_error_occurred): New var.
12286 (auto_save_error): Set it.
12287 (Fdo_auto_save): Don't overwrite the error message if an auto-save
12288 error occurred.
12289
122902008-02-23 Eli Zaretskii <eliz@gnu.org>
12291
12292 * w32.c (globals_of_w32): Add initializations for
12293 g_b_init_get_sid_sub_authority and
12294 g_b_init_get_sid_sub_authority_count.
12295
122962008-02-22 Stefan Monnier <monnier@iro.umontreal.ca>
12297
12298 * font.c (font_match_xlfd, font_check_xlfd_parse): New funs.
12299 (font_parse_xlfd): Use them for sanity check.
12300 (Finternal_set_font_style_table): Make sure the table is bijective.
12301
12302 Consolidate the image_cache to the terminal struct.
12303 * termhooks.h (P_): Remove redundant def.
12304 (struct terminal): New field `image_cache'.
12305 * frame.h (FRAME_IMAGE_CACHE): New macro. Use it everywhere in place
12306 of FRAME_X_IMAGE_CACHE.
12307 * xterm.h (struct x_display_info): Remove image_cache field.
12308 (FRAME_X_IMAGE_CACHE): Remove. Use FRAME_IMAGE_CACHE instead.
12309 * w32term.h (struct w32_display_info): Remove image_cache field.
12310 (FRAME_X_IMAGE_CACHE): Remove. Use FRAME_IMAGE_CACHE instead.
12311 * macterm.h (struct mac_display_info): Remove image_cache field.
12312 (FRAME_X_IMAGE_CACHE): Remove. Use FRAME_IMAGE_CACHE instead.
12313 * xterm.c (x_term_init):
12314 * w32term.c (w32_term_init):
12315 * macterm.c (mac_term_init): Set the image_cache in the terminal.
12316 * dispextern.h (clear_image_cache, forall_images_in_image_cache):
12317 Remove declarations.
12318 (clear_image_caches, mark_image_cache): New declarations.
12319 * xfaces.c (clear_face_cache):
12320 * xdisp.c (redisplay_internal): Use clear_image_caches.
12321 * image.c (clear_image_cache): Don't check that a frame is on
12322 a window-system before checking if it shares the same cache.
12323 (clear_image_caches): New function.
12324 (Fclear_image_cache): Use it.
12325 (mark_image): Move from allo.c.
12326 (mark_image_cache): Move from alloc.c and forall_images_in_image_cache.
12327 * alloc.c (mark_image, mark_image_cache): Move to image.c.
12328 (mark_object): Don't call mark_image_cache for frames.
12329 (mark_terminals): Call mark_image_cache.
12330
12331 * lisp.h (Fdelete_terminal): Declare.
12332
12333 * charset.h (CHECK_CHARSET, CHECK_CHARSET_GET_ID)
12334 (CHECK_CHARSET_GET_ATTR): Don't use the inexistent return value of
12335 wrong_type_argument.
12336
123372008-02-22 Kenichi Handa <handa@ni.aist.go.jp>
12338
12339 * Makefile.in (lisp): Remove devanagari.el, kannada.el,
12340 malayalam.el, and tamil.el. Add sinhala.el.
12341
123422008-02-21 Stefan Monnier <monnier@iro.umontreal.ca>
12343
12344 * xterm.c (x_connection_closed): Consolidate identical tests.
12345 (x_delete_terminal): Don't crash if called via x_connection_closed.
12346
123472008-02-21 Kenichi Handa <handa@ni.aist.go.jp>
12348
12349 * xdisp.c (decode_mode_spec): New arg string.
12350 (display_mode_element): Adjust for the above change.
12351
123522008-02-19 Stefan Monnier <monnier@iro.umontreal.ca>
12353
12354 * callint.c (Fcall_interactively): Use AREF.
12355
123562008-02-18 Stefan Monnier <monnier@iro.umontreal.ca>
12357
12358 * font.c (font_unparse_xlfd): Don't ignore integer pixel size specs.
12359
123602008-02-18 Jan Djärv <jan.h.d@swipnet.se>
12361
12362 * xfns.c (Fx_show_tip): Set string to " " if empty.
12363
123642008-02-17 Dan Nicolaescu <dann@ics.uci.edu>
12365
12366 * callint.c (syms_of_callint): Initialize Vmark_even_if_inactive
12367 with Qt.
12368
123692008-02-17 Kenichi Handa <handa@m17n.org>
12370
12371 * ftfont.c (ftfont_shape): Return Lispy number.
12372
12373 * xfaces.c (prepare_face_for_display): Use display_info->font->fid
12374 for GCs.
12375 (Finternal_set_font_selection_order): Call font_update_sort_order
12376 only when enable_font_backend is set.
12377 (realize_x_face): Set face->font_info to that of default face only
12378 when enable_font_backend is set.
12379
12380 * xdisp.c (handle_composition_prop): Set it->c to the fist
12381 character of the composed region.
12382 (fill_composite_glyph_string): Set base_face->font_info to
12383 s->font_info. Get a face for ascii from base_face->ascii_face.
12384 (BUILD_COMPOSITE_GLYPH_STRING): Call fill_composite_glyph_string
12385 with a face already decided.
12386 (x_produce_glyphs): Be sure to set it->ascent and it->descent to
12387 non-negative.
12388 (x_produce_glyphs): If the composition method is ..._WITH_GLYPH_STRING,
12389 call font_prepare_composition unconditionally.
12390
12391 * xfns.c (x_make_gc): Use the default font id of the frame for GCs.
12392
12393 * xterm.h (struct x_display_info): New member font.
12394
12395 * xterm.c (x_set_cursor_gc): Use display_info->font->fid for GCs.
12396 (x_set_mouse_face_gc, x_new_font): Likewise.
12397 (x_term_init): Setup display_info->font.
12398 (x_delete_terminal): Free display_info->font.
12399
12400 * xfont.c (xfont_draw): Use BLOCK_INPUT and UNBLOCK_INPUT.
12401
12402 * ftxfont.c (ftxfont_default_fid): Delete it.
12403 (ftxfont_open): Set xfont->fid to 0.
12404 (ftxfont_end_for_frame): Clear data specific to the frame and the
12405 font-driver.
12406
12407 * xftfont.c (xftfont_default_fid): Delete it.
12408 (xftfont_open): Set xfont->fid to 0.
12409
12410 * fontset.c (FONTSET_OBJLIST): New macro.
12411 (fontset_find_font): Update font-object list of the fontset.
12412 (free_realized_fontset): New function.
12413 (free_face_fontset): Call free_realized_fontset.
12414 (Ffont_info): Call font_close_object only when enable_font_backend
12415 is set.
12416
12417 * font.c [HAVE_X_WINDOWS]: Include xterm.h.
12418 [HAVE_NTGUI]: Include w32term.h.
12419 [MAC_OS]: Include macterm.ch.
12420 (font_otf_ValueRecord): Use make_number.
12421 (font_finish_cache): Fix handling of reference count.
12422 (font_clear_cache): Update num_fonts.
12423 (font_open_entity): Update smallest_char_width and
12424 smallest_font_height of the frame.
12425 (font_close_object): Update num_fonts.
12426 (Fclear_font_cache): Fix finding the target cache data.
12427
124282008-02-16 Glenn Morris <rgm@gnu.org>
12429
12430 * fontset.c (Finternal_char_font): Fix compilation warning.
12431
124322008-02-16 Eli Zaretskii <eliz@gnu.org>
12433
12434 * w32.c (init_user_info): Use TOKEN_USER and TOKEN_PRIMARY_GROUP
12435 instead of char arrays. Enlarge the size of array passed to
12436 get_token_information.
12437
12438 * font.c (Ffont_fill_gstring, Fget_font_glyphs): Fix compilation
12439 warnings.
12440
124412008-02-15 Dan Nicolaescu <dann@ics.uci.edu>
12442
12443 * .gdbinit: Don't set `args', it breaks gdb --args.
12444
124452008-02-14 Stefan Monnier <monnier@iro.umontreal.ca>
12446
12447 * fileio.c (Finsert_file_contents): Adjust offsets when replacing
12448 within a narrowed buffer.
12449
124502008-02-14 Kenichi Handa <handa@ni.aist.go.jp>
12451
12452 * coding.c (decode_coding_object, encode_coding_object):
12453 Preserve Vdeactivate_mark. Delete unnecessary call of Fcurrent_buffer.
12454
124552008-02-12 Stefan Monnier <monnier@iro.umontreal.ca>
12456
12457 * coding.c (coding_set_destination): Use BEG_BYTE rather than
12458 hardcoding 1.
12459 (detect_coding_system):
12460 * lisp.h (detect_coding_system, chars_in_text, multibyte_chars_in_text)
12461 (string_char_to_byte, string_byte_to_char, insert_from_gap):
12462 * insdel.c (insert_from_gap):
12463 * fns.c (string_char_byte_cache_charpos, string_char_byte_cache_bytepos)
12464 (string_char_to_byte, string_byte_to_char, string_make_multibyte)
12465 (string_to_multibyte):
12466 * character.c (chars_in_text, multibyte_chars_in_text):
12467 * fileio.c (Finsert_file_contents): Use EMACS_INT for buffer positions.
12468
12469 * character.h (FETCH_STRING_CHAR_ADVANCE)
12470 (FETCH_STRING_CHAR_AS_MULTIBYTE_ADVANCE)
12471 (FETCH_STRING_CHAR_ADVANCE_NO_CHECK): Use SDATA and SREF.
12472 (DEC_POS, BUF_DEC_POS): Use BEG_BYTE rather than hardcoding 1.
12473
12474 * casefiddle.c (casify_region): Only call after-change and composition
12475 functions on the part of the region that was changed.
12476
12477 * keyboard.c (read_avail_input):
12478 * frame.c (Fdelete_frame): Call Fdelete_terminal.
12479
124802008-02-11 Stefan Monnier <monnier@iro.umontreal.ca>
12481
12482 * buffer.c (clone_per_buffer_values, reset_buffer_local_variables)
12483 (Fbuffer_local_value, Fbuffer_local_variables): Don't forget undo_list.
12484
124852008-02-11 Juanma Barranquero <lekktu@gmail.com>
12486
12487 * w32menu.c (push_submenu_start, push_submenu_end)
12488 (push_left_right_boundary, push_menu_pane, push_menu_item):
12489 * keyboard.c (read_key_sequence): Don't pass args with side effects
12490 to AREF, it fails when compiling with -DENABLE_CHECKING.
12491
124922008-02-11 Kenichi Handa <handa@ni.aist.go.jp>
12493
12494 * Makefile.in (${lispsource}international/charprop.el):
12495 Delete this target.
12496
12497 * search.c (boyer_moore): Fix incorrect synching of the trunk and
12498 emacs-unicode-2.
12499
125002008-02-11 Stefan Monnier <monnier@iro.umontreal.ca>
12501
12502 * terminal.c (Fdelete_terminal): Clean up the `force' path.
12503
125042008-02-10 Stefan Monnier <monnier@iro.umontreal.ca>
12505
12506 * frame.c (Qnoelisp): New symbol.
12507 (syms_of_frame): Initialize it.
12508 (Fdelete_frame): Use it to distinguish a mere `force' passed from some
12509 harmless Elisp code, from a strong `force' from x_connection_closed.
12510 * frame.h (Qnoelisp): Declare.
12511 * xterm.c (x_connection_closed): Pass `noelisp'.
12512
12513 * lisp.h (struct Lisp_Misc_Any, struct Lisp_Marker)
12514 (struct Lisp_Overlay, struct Lisp_Kboard_Objfwd)
12515 (struct Lisp_Save_Value, struct Lisp_Free): Use enum Lisp_Misc_Type
12516 rather than `int' for the type of `type'.
12517
125182008-02-10 Dan Nicolaescu <dann@ics.uci.edu>
12519
12520 * s/gnu-linux.h: Remove support for non-ELF and linux-1.x.
12521
12522 * Makefile.in (GNUC): Remove support for gcc-1.x.
12523
125242008-02-10 Richard Stallman <rms@gnu.org>
12525
12526 * lisp.h (ASET): Use AREF, not ASLOT.
12527
125282008-02-10 Stefan Monnier <monnier@iro.umontreal.ca>
12529
12530 * lisp.h (ASET): Check bounds.
12531
125322008-02-10 Glenn Morris <rgm@gnu.org>
12533
12534 * buffer.c (mode-name): Doc fix.
12535
125362008-02-09 Dan Nicolaescu <dann@ics.uci.edu>
12537
12538 * Makefile.in:
12539 * emacs.c:
12540 * gmalloc.c:
12541 * keyboard.c:
12542 * lisp.h:
12543 * m/ibm370aix.h:
12544 * process.c:
12545 * regex.c:
12546 * s/hpux.h:
12547 * sysdep.c:
12548 * sysselect.h:
12549 * systty.h:
12550 * unexec.c:
12551 * w32term.c:
12552 * xsmfns.c:
12553 * xterm.c: Remove code that deals with obsolete variables.
12554
12555 * s/msdos.h (DONT_NEED_ENVIRON): Don't define.
12556
12557 * ecrt0.c: Replace the DONT_NEED_ENVIRON test with MSDOS test,
12558 nothing else needs it anymore.
12559
125602008-02-09 Eli Zaretskii <eliz@gnu.org>
12561
12562 * buffer.h (FETCH_CHAR_AS_MULTIBYTE): Use unibyte_to_multibyte_table
12563 instead of unibyte_char_to_multibyte.
12564
125652008-02-09 Dan Nicolaescu <dann@ics.uci.edu>
12566
12567 * s/gnu-linux.h: Remove commented out code.
12568
12569 * unexec.c: Remove references to obsolete variable COFF_ENCAPSULATE.
12570
12571 * Makefile.in: Update what RMS says about using autoconf.
12572 (C_COMPILER, COFF_ENCAPSULATE, MAKE_PARALLEL): Remove obsolete variable.
12573 (C_SWITCH_MACHINE_1, C_SWITCH_SYSTEM_1, C_SWITCH_SITE_1)
12574 (C_SWITCH_X_SITE_1, C_SWITCH_X_MACHINE_1)
12575 (C_SWITCH_X_SYSTEM_1): Move invariant code outside conditional.
12576
125772008-02-08 Stefan Monnier <monnier@iro.umontreal.ca>
12578
12579 * keymap.c (Fkey_description): Move side effect outside of macro call.
12580
12581 * xfaces.c (Finternal_make_lisp_face):
12582 * keyboard.c (add_command_key, parse_menu_item): Use ASET.
12583
12584 * fontset.c (free_face_fontset): Use FONTSET_FROM_ID.
12585 (syms_of_fontset): Use ASET.
12586
12587 * fns.c (concat): Move side effect outside of macro call.
12588 (hash_clear): Use ASET.
12589
125902008-02-08 Richard Stallman <rms@gnu.org>
12591
12592 * frame.c (Fdelete_frame): If FORCE, don't call hooks.
12593 If FORCE, and frame has a surrogate minibuffer for another frame,
12594 delete the other frame first.
12595
125962008-02-07 Timo Savola <timo.savola@iki.fi>
12597
12598 * xterm.c (x_detect_focus_change): Handle embed client message.
12599 (handle_one_xevent): Ditto.
12600 (handle_one_xevent): If embedded and we get a button press/release,
12601 request focus.
12602 (xembed_set_info, xembed_send_message): New functions.
12603 (x_make_frame_visible): Call xembed_set_info if embedded.
12604 (x_make_frame_invisible): Call xembed_set_info if embedded.
12605 (x_term_init): Initialize Xatom_XEMBED.
12606 (x_make_frame_visible): Check for FRAME_X_EMBEDDED_P also.
12607 (x_iconify_frame): Ditto.
12608
12609 * xterm.h (struct x_display_info): Add AtomXatom_XEMBED.
12610 (enum xembed_info, enum xembed_message, enum xembed_focus)
12611 (enum xembed_modifier, enum xembed_accelerator): New.
12612 (xembed_set_info, xembed_send_message): Declare.
12613 (FRAME_X_EMBEDDED_P): New.
12614
12615 * gtkutil.c (xg_create_frame_widgets): If frame is embedded, call
12616 gtk_plug_new.
12617
12618 * xfns.c (Fx_create_frame): Do not override the explicitly set parent
12619 window ID of a frame.
12620 (x_window): Reparent frame if embedded.
12621 (Fx_create_frame): Don't set border width if embedded.
12622
12623 * emacs.c (USAGE3): Add --parent-id.
12624 (standard_args): Ditto.
12625
126262008-02-07 Jan Djärv <jan.h.d@swipnet.se>
12627
12628 * coding.c (DECODE_EMACS_MULE_COMPOSITION_CHAR): Use "do...while (0)".
12629
126302008-02-07 Jim Meyering <meyering@redhat.com>
12631
12632 Use "do...while (0)", not "if (1)...else" in macro definitions.
12633 The latter provokes a warning from gcc about the empty else, when
12634 followed by ";". Also, without that trailing semicolon, it would
12635 silently swallow up any following statement.
12636 * syntax.h (SETUP_SYNTAX_TABLE)
12637 (SETUP_SYNTAX_TABLE_FOR_OBJECT): Likewise.
12638 * buffer.h (DECODE_POSITION): Likewise.
12639 * character.h (FETCH_STRING_CHAR_ADVANCE): Likewise.
12640 (FETCH_STRING_CHAR_AS_MULTIBYTE_ADVANCE): Likewise.
12641 (FETCH_STRING_CHAR_ADVANCE_NO_CHECK): Likewise.
12642 (FETCH_CHAR_ADVANCE): Likewise.
12643 (FETCH_CHAR_ADVANCE_NO_CHECK): Likewise.
12644
126452008-02-07 Jim Meyering <meyering@redhat.com>
12646
12647 * lread.c [lint]: Don't include <sys/inode.h>.
12648
126492008-02-07 Stefan Monnier <monnier@iro.umontreal.ca>
12650
12651 * xselect.c (x_handle_dnd_message):
12652 * xmenu.c (digest_single_submenu, xmenu_show):
12653 * xdisp.c (with_echo_area_buffer_unwind_data)
12654 (format_mode_line_unwind_data, unwind_format_mode_line)
12655 (display_menu_bar):
12656 * eval.c (Ffetch_bytecode):
12657 * doc.c (store_function_docstring):
12658 * ccl.c (resolve_symbol_ccl_program, ccl_get_compiled_code)
12659 (Fccl_execute, Fccl_execute_on_string, Fregister_code_conversion_map):
12660 * buffer.c (add_overlay_mod_hooklist): Use ASET.
12661
126622008-02-07 Kenichi Handa <handa@m17n.org>
12663
12664 * ftxfont.c (ftxfont_open): Don't set
12665 dpyinfo->smallest_font_height and dpyinfo->smallest_char_width to 0.
12666
12667 * ftfont.c (ftfont_open): Fix previous change.
12668
126692008-02-06 Jason Rumney <jasonr@gnu.org>
12670
12671 * w32font.c (w32font_text_extents): Fill in lbearing metric.
12672 Use cached metrics for ASCII characters.
12673 (w32font_open_internal): Don't set font's owning_frame.
12674 Cache metrics for ASCII characters.
12675
12676 * w32font.h (struct w32font_info): Add ascii_metrics.
12677 Remove owning_frame.
12678
126792008-02-06 Kenichi Handa <handa@ni.aist.go.jp>
12680
12681 * xdisp.c (x_produce_glyphs): Don't set it->ascent and it->descent
12682 to negative value.
12683
12684 * ftxfont.c (ftxfont_draw): Use s->font_info, not face->font_info.
12685
12686 * ftfont.c (ftfont_open): Fix calculation of font->font.average_width.
12687
12688 * charset.c (syms_of_charset): Set QCtest and Qeq.
12689
126902008-02-06 Stefan Monnier <monnier@iro.umontreal.ca>
12691
12692 * process.c (Fstart_process):
12693 * callproc.c (Fcall_process): Handle the case where
12694 Funhandled_file_name_directory returns nil.
12695
12696 * font.h (enum lgstring_indices, enum lglyph_indices): New enums.
12697 (LGSTRING_SLOT, LGSTRING_SET_SLOT): New macros.
12698 * font.c (check_gstring): Use them and AREF to access the vector before
12699 we know it's really a gstring.
12700 (Ffont_shape_text): Fix typo.
46e722a9 12701 (Ffont_shape_text, Ffont_otf_alternates): Fix up int/Lisp_Object mixups.
aac0c6e3
MR
12702
12703 * composite.h (Fcompose_region_internal, Fcompose_string_internal):
12704 Declare.
12705
12706 * chartab.c (make_sub_char_table): Remove noop-yet-incorrect statement.
12707
127082008-02-05 Jason Rumney <jasonr@gnu.org>
12709
12710 * w32font.c (w32font_open_internal): Fill min_width with tmAveCharWidth.
12711 Set smallest_font_height and smallest_char_width in display info.
12712
127132008-02-05 Kenichi Handa <handa@ni.aist.go.jp>
12714
12715 * coding.c (decode_eol): Pay attention to coding->dst_multibyte.
12716
127172008-02-05 Miles Bader <miles@gnu.org>
12718
12719 * xfaces.c (get_lface_attributes, merge_named_face)
12720 (lookup_named_face, lookup_derived_face, realize_named_face):
12721 Revert 2008-02-01 change by cyd@stupidchicken.com.
12722
127232008-02-04 Kenichi Handa <handa@ni.aist.go.jp>
12724
12725 * fontset.c (Ffontset_info): Handle the case of inhibitting the
12726 fallback fonts.
12727 (Ffontset_info) [USE_FONT_BACKEND]: Fix getting of opened font names.
12728
127292008-02-04 Jason Rumney <jasonr@gnu.org>
12730
12731 * w32font.c (w32font_open_internal): Use font_unparse_fcname to
12732 set full_name.
12733 (w32font_open_internal): Use xmalloc, xrealloc, xfree.
12734
127352008-02-03 Jason Rumney <jasonr@gnu.org>
12736
12737 * makefile.w32-in (OBJ1): Include font.o here.
12738 (FONTOBJ) [USE_FONTBACKEND]: Instead of here.
12739
127402008-02-02 Jason Rumney <jasonr@gnu.org>
12741
12742 * makefile.w32-in (temacs): Bump EMHEAP to 21.
12743
127442008-02-01 Jason Rumney <jasonr@gnu.org>
12745
12746 * s/cygwin.h: Define VIRT_ADDR_VARIES.
12747
12748 * puresize.h [VIRT_ADDR_VARIES]: Don't include CYGWIN in condition.
12749
127502008-02-01 Andreas Schwab <schwab@suse.de>
12751
12752 * Makefile.in (shortlisp, lisp): Update for rename of
12753 ../lisp/language/myanmar.el.
12754
127552008-02-01 Chong Yidong <cyd@stupidchicken.com>
12756
12757 * xfaces.c (get_lface_attributes): Delete function.
12758 (merge_named_face, lookup_named_face, lookup_derived_face)
12759 (realize_named_face): Call lface_from_face_name directly, and use
12760 the fact that merge_face_vectors does not alter its FROM argument.
12761
127622008-02-01 Jason Rumney <jasonr@gnu.org>
12763
12764 * w32term.c (w32_read_socket) <WM_CHAR>: Decode non-Unicode
12765 input in the default locale. Handle non-Unicode multibyte input.
12766
127672008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
12768
12769 * fontset.c (reorder_font_vector): Exclude nil elements from the
12770 font group. Don't try multiple fonts.
12771 (fontset_font): Adjust for the above change.
12772 (Finternal_char_font): Return nil if the found font doesn't
12773 contain the character ch.
12774
12775 * Makefile.in (lisp, shortlisp): Add cham.el.
12776
127772008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
12778
12779 * font.h (FONTP): Make it return 1 also for a font-object.
12780
12781 * .gdbinit (xfontset): New function.
12782
12783 * font.c (font_find_for_lface): Check if the character C is
12784 supported or not only for the first font.
12785
12786 * fontset.c (reorder_font_vector): Fix typo.
12787 (fontset_find_font): Don't add a font-spec specifying a script.
12788 Use 0 (not Qt) for the indication of empty font-group. Change the
12789 format of RFONT-DEF. Return Qt if no font in the font-group
12790 support the character.
12791 (fontset_font): Adjust for the above change. If no font was
12792 found the character, remember that.
12793 (face_for_char): Adjust for the change of RFONT-DEF.
12794 (Fset_fontset_font): Allow nil for FONT-SPEC to explicitly specify
12795 no font for the target.
12796 (Finternal_char_font): Adjust for the change of RFONT-DEF.
12797
127982008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
12799
12800 * font.c (font_load_for_face): Handle the case that the font in
12801 face->lface is a string.
12802
128032008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
12804
12805 * xfaces.c (set_lface_from_font_and_fontset): Set the fontname in lface.
12806
128072008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
12808
12809 * xfaces.c (Finternal_set_lisp_face_attribute) [USE_FONT_BACKEND]:
12810 Fix previous change. If the frame is not on a window system,
12811 signal an error.
12812
128132008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
12814
12815 * coding.c (decode_coding_object, encode_coding_object): Adjust
12816 marker positions after conversion.
12817
12818 * lisp.h (struct Lisp_Marker): New member need_adjustment.
12819
128202008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
12821
12822 * font.c (font_find_for_lface): Fix the handling of the return
12823 value of font_has_char.
12824 (Ffont_shape_text): Fix previous change.
12825
12826 * fontset.c (FONTSET_REF_AND_RANGE): Delete it.
12827 (fontset_ref_and_range): Delete it.
12828 (fontset_find_font): Call char_table_ref_and_range instead of
12829 FONTSET_REF_AND_RANGE.
12830 (make_fontset): Don't setup font groups of Latin here.
12831 (Fset_fontset_font): Don't overwrite the setting of FONTSET_ASCII.
12832 (new_fontset_from_font): Make the specified font the default for
12833 all Latin characters.
12834
128352008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
12836
12837 * xfaces.c (Finternal_set_lisp_face_attribute): Check if the frame
12838 is on a window system before accessing the fontset of the frame.
12839
128402008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
12841
12842 * Makefile.in (lisp, shortlisp): Add kherm.el and myanmar.el.
12843
12844 * ftfont.c (ftfont_driver): Set ftfont_shape in ftfont_driver only
12845 when both HAVE_M17N_FLT and HAVE_LIBOTF are defined.
12846
12847 * font.c (Ffont_shape_text): If the font driver doesn't have a
12848 shaper function, make zero-width glyphs to have at least one-pixel
12849 width. Fix setting of `to' field of glyphs.
12850
128512008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
12852
12853 * ftfont.c (ftfont_drive_otf): Fix setting of FROM and TO slots of
12854 glyphs.
12855
12856 * font.h (struct font_driver): Improve docstring of member `shape'.
12857
128582008-02-01 Kenichi Handa <handa@m17n.org>
12859
12860 * composite.c (syms_of_composite): Fix docstring of
12861 auto-composition-function.
12862
12863 * font.h (LGLYPH_SIZE): New macro.
12864
12865 * font.c (Ffont_fill_gstring): Stop filling when a character not
12866 supported by the font is found.
12867 (Ffont_shape_text): When a shape callback function returns nil,
12868 try at most two more times with larger gstring.
12869 (Ffont_at): Fix getting of w. Call font_at with correct 5th argument.
12870
12871 * xdisp.c (handle_auto_composed_prop): Change the argument to
12872 auto-composition-function.
12873
12874 * ftfont.c (ftfont_encode_char): Use the macro FONT_INVALID_CODE.
12875 (ftfont_shape_by_flt): If an element of lgstring is nil, make a
12876 Lispy glyph and store it in the lgstring.
12877
12878 * xfont.c (xfont_encode_char): Use the macro FONT_INVALID_CODE.
12879
12880 * xftfont.c (xftfont_encode_char): Use the macro FONT_INVALID_CODE.
12881
128822008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
12883
12884 * font.c (Ffont_shape_text): Avoid unnecessary composition.
12885
12886 * fontset.c (Vfont_encoding_charset_alist): New variable.
12887 (syms_of_fontset): DEFVAR it.
12888 (reorder_font_vector, fontset_find_font): Optimize for the case of
12889 no need of reordering.
12890 (face_for_char): Map the charset property by
12891 Vfont_encoding_charset_alist.
12892
128932008-02-01 Jason Rumney <jasonr@gnu.org>
12894
12895 * w32font.c (logfonts_match): Don't check adstyle here.
12896 (font_matches_spec): Check here against physical font instead.
12897 (add_font_entity_to_list): Avoid some substitutions.
12898
12899 * font.c (font_parse_fcname): Default weight and slant to normal.
12900 (font_score): Prefer normal fonts if weight or slant unspecified.
12901 (font_score) [WINDOWSNT]: Scale weight difference down to closer
12902 match freetype scores.
12903
129042008-02-01 Jason Rumney <jasonr@gnu.org>
12905
12906 * w32font.c (w32font_text_extents): Don't use the frame stored in the
12907 font, as it may have been deleted.
12908 (w32_enumfont_pattern_entity): Map generic family to adstyle using
12909 most common hyphenless variation.
12910 (logfonts_match): Check generic family.
12911 (font_matches_spec): Don't check generic family here.
12912 (fill_in_logfont): Set generic family based on adstyle.
12913
12914 * w32font.h (w32font_get_cache): Update declaration.
12915
129162008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
12917
12918 * ftfont.c (ftfont_get_cache): Adjust the argument type.
12919
12920 * frame.c (x_set_font_backend): Don't call Fclear_font_cache.
12921 If none of the new drivers are available, call font_update_drivers
12922 with the old drivers.
12923
12924 * w32font.c (w32font_get_cache): Adjust the argument type.
12925
12926 * xfont.c (xfont_get_cache): Adjust the argument type.
12927
12928 * font.h (struct font_driver): Change argument type of get_cache.
12929
12930 * xftfont.c (xftfont_start_for_frame): Delete prototype.
12931
12932 * font.c (Ffont_get): Fix arguments to Fassoc.
12933 (font_prepare_cache, font_finish_cache, font_get_cache): New functions.
12934 (font_clear_cache): New function.
12935 (font_list_entities, font_matching_entity): Use font_get_cache.
12936 (font_update_drivers): Call font_clear_cache when finishing a driver.
12937
12938 * fontset.c (fontset_find_font): Fix previous change.
12939
129402008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
12941
12942 * xterm.c (x_check_font) [USE_FONT_BACKEND]: Don't access
12943 dpyinfo->font_table.
12944 (x_delete_display) [USE_FONT_BACKEND]: Likewise.
12945 (x_delete_terminal) [USE_FONT_BACKEND]: Likewise.
12946
12947 * font.c (font_at): Handle the case that the arg C is negative.
12948 Handle the unibyte case.
12949 (Ffont_at): Call font_at with the arg C -1.
12950
12951 * xdisp.c (handle_auto_composed_prop): Don't get a character at
12952 the position here, and call font_at with the arg C -1.
12953 Don't check the range of the existing composition at the point.
12954
129552008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
12956
12957 * fontset.c (fontset_add): New args charset_id and family.
12958 Change caller.
12959 (load_font_get_repertory, fontset_find_font): Assume that
12960 font_spec is always a font-spec object.
12961 (Fset_fontset_font): Always store a font-spec object in a fontset.
12962
12963 * xdisp.c (handle_auto_composed_prop): Use Fget_text_property
12964 instead of get_property_and_range.
12965
129662008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
12967
12968 * xftfont.c (struct xftfont_info): Delete the member ft_face.
12969 (xftfont_open): Don't keep locking face.
12970 (xftfont_close): Don't unlock face.
12971 (xftfont_anchor_point, xftfont_shape): Lock and unlock face.
12972
12973 * fontset.c (fontset_find_font): Don't prefer a font of
12974 supplementary charset.
12975
129762008-02-01 Kenichi Handa <handa@m17n.org>
12977
12978 * ftfont.c (struct OpenTypeSpec): Rename members script_tag to
12979 script, langsys_tag to langsys, new member script.
12980 (OTF_TAG_STR): Terminate by '\0'.
867d4bb3 12981 (ftfont_get_open_type_spec): If :otf prop is spec, limit the
aac0c6e3
MR
12982 listing to the script specified in that property. Fix arg to
12983 OTF_check_features.
12984
129852008-02-01 Jason Rumney <jasonr@gnu.org>
12986
12987 * w32font.h: New file.
12988
12989 * w32font.c: Include it.
12990 (struct w32font_info): Add owning_frame field. Move to w32font.h.
12991 (w32font_open): Set owning_frame.
12992 (w32font_text_extents): Use owning_frame.
12993 (struct font_callback_data): Add opentype_only field.
12994 (add_font_entity_to_list): Use it to filter fonts.
12995 Don't check against full name.
12996 (w32font_list_internal): New function.
12997 (w32font_list): Use it.
12998 (w32font_match_internal): New function.
12999 (w32font_match): Use it.
13000 (w32font_open_internal): New function.
13001 (w32font_open): Use it.
13002 (w32font_get_cache, w32font_close, w32font_has_char)
13003 (w32font_encode_char, w32font_text_extents, w32font_draw):
13004 Make non-static.
13005
13006 * makefile.w32-in (w32font.o): Depend on w32font.h.
13007
130082008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
13009
13010 * charset.c (Fdefine_charset_internal): Record a supplementary
13011 charset at the tail of Vcharset_order_list.
13012
13013 * font.c (Ffont_shape_text): Fix the return value.
13014
13015 * ftfont.c (OTF_SYM_TAG, OTF_TAG_STR): Fix argument names.
13016
13017 * xdisp.c (handle_auto_composed_prop): Fix previous change.
13018
130192008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
13020
13021 * ftfont.c (struct OpenTypeSpec): New struct.
13022 (OTF_SYM_TAG, OTF_TAG_STR): New macros.
13023 (ftfont_get_open_type_spec): New function.
13024 (ftfont_list) [HAVE_LIBOTF]: Check otf-spec property.
13025
13026 * lread.c (read1): Redo the previous change with checking Vpurify_flag.
13027
130282008-02-01 Jason Rumney <jasonr@gnu.org>
13029
13030 * w32font.c (add_font_entity_to_list): Compare only the beginning
13031 of full name.
13032
130332008-02-01 Kenichi Handa <handa@m17n.org>
13034
13035 * xdisp.c (handle_auto_composed_prop): Simplify the code.
13036 Never return HANDLED_RECOMPUTE_PROPS.
13037
130382008-02-01 Kenichi Handa <handa@m17n.org>
13039
13040 * font.c (font_gstring_produce): Delete it.
13041
13042 * composite.h (COMPOSITION_METHOD):
13043 Handle COMPOSITION_WITH_GLYPH_STRING.
13044
130452008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
13046
13047 * xfont.c (Qx): Delete.
13048 (syms_of_xfont): Don't initialize Qx.
13049
13050 * composite.h (enum composition_method):
13051 Define COMPOSITION_WITH_GLYPH_STRING unconditionally.
13052
130532008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
13054
13055 * xfaces.c [HAVE_WINDOW_SYSTEM]: Include "font.h" unconditionally.
13056 (choose_face_font): Accept new form of font-spec.
13057
13058 * frame.h (font_driver_list): Declare it unconditionally.
13059 (struct frame): Define members font_driver_list and font_data_list
13060 unconditionally.
13061
13062 * fontset.c: Include "font.h" unconditionally.
13063 (generate_ascii_font_name): Use font_parse_xlfd and font_unparse_xlfd.
13064 (Fset_fontset_font): Accept a font-spec object.
13065
13066 * font.c (font_unparse_xlfd): If pixel_size is zero, make the
13067 PIXEL_SIZE part a wild card.
13068
13069 * dispextern.h (struct glyph_string): Define members clip and
13070 num_clips unconditionally.
13071 (struct face): Define members font_info and extra unconditionally.
13072
13073 * ftfont.c (ftfont_open): Set members maybe_otf and otf of
13074 ftfont_info only when HAVE_LIBOTF is defined.
13075
130762008-02-01 Andreas Schwab <schwab@suse.de>
13077
13078 * xdisp.c (back_to_previous_visible_line_start): Fix type of beg
13079 and end.
13080
130812008-02-01 Jason Rumney <jasonr@gnu.org>
13082
13083 * w32font.c (w32font_driver): Add new fields.
13084
130852008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
13086
13087 * Makefile.in (ALL_CFLAGS): Add @M17N_FLT_CFLAGS@.
13088 (FONTSRC, FONTOBJ) [HAVE_WINDOW_SYSTEM]: Set them unconditionally.
13089 (LIBES): Add @M17N_FLT_CFLAGS@.
13090
13091 * composite.c (compose_text): Don't treat the new style
13092 composition specially.
13093
13094 * emacs.c (main): Call syms_of_font unconditionally.
13095
13096 * font.h (FONT_ENTITY_NOT_LOADABLE)
13097 (FONT_ENTITY_SET_NOT_LOADABLE): New macros.
13098 (LGSTRING_XXXX, LGLYPH_XXX): Adjust for the change of lispy gstring.
13099 (struct font_driver): New member shape.
13100 (font_registry_charsets): Extern it.
13101 (font_find_for_lface, font_prepare_composition): Adjust prototype.
13102 (font_otf_capability, font_drive_otf): Delete their externs.
13103
13104 * font.c [HAVE_M17N_FLT]: Include <m17n-flt.h>.
13105 (font_charset_alist, font_registry_charsets): Move from xfont.c
13106 and rename.
13107 (font_prop_validate_otf): New function.
13108 (font_property_table): Register it for QCotf.
13109 (DEVICE_DELTA, adjust_anchor, REPLACEMENT_CHARACTER)
13110 (font_drive_otf): Delete.
13111 (font_prepare_composition): New arg F. Adjust for the change of
13112 lispy gstring.
13113 (font_find_for_lface): New arg C.
13114 (font_load_for_face): Adjust for the change of font_find_for_lface.
13115 (Ffont_make_gstring, Ffont_fill_gstring): Adjust for the change of
13116 lispy gstring.
13117 (Ffont_shape_text): New function.
13118 (Fopen_font): If the font size is not given, use 12-pixel.
13119 (Ffont_at): New arg STRING.
13120 (syms_of_font): Initalize font_charset_alist.
13121 Declare Ffont_shape_text as a Lisp function. Call syms_of_XXfont
13122 conditionally.
13123
13124 * fontset.c (fontset_find_font) [USE_FONT_BACKEND]: Try multiple
13125 fonts of the same font-spec. Change the format of RFONT-DEF.
13126 (face_for_char, make_fontset_for_ascii_face, Finternal_char_font):
13127 Adjust for the change of RFONT-DEF.
13128 (Fset_fontset_font) [USE_FONT_BACKEND]: Handle new format of font-spec.
13129
13130 * ftfont.h: New file.
13131
13132 * ftfont.c: Don't include Freetype headers. Include "ftfont.h".
13133 (struct ftfont_info) [HAVE_LIBOTF]: New members maybe_otf and otf.
13134 (ftfont_open) [HAVE_LIBOTF]: Initialize the above members.
13135 (ftfont_driver) [HAVE_LIBOTF, HAVE_M17N_FLT]: Don't set
13136 font_otf_capability and font_drive_otf, set ftfont_shape.
13137 (ftfont_list): Adjust for the change of :otf property value.
13138 (struct MFLTFontFT) [HAVE_LIBOTF, HAVE_M17N_FLT]: New struct.
13139 (ftfont_get_glyph_id, ftfont_get_metrics, ftfont_check_otf)
13140 (adjust_anchor, ftfont_drive_otf, ftfont_shape_by_flt)
13141 (ftfont_shape) [HAVE_LIBOTF, HAVE_M17N_FLT]: New function.
13142 (DEVICE_DELTA) [HAVE_LIBOTF, HAVE_M17N_FLT]: New macro.
13143 (otf_gstring, gstring, m17n_flt_initialized): New variables.
13144
13145 * w32term.c (x_draw_composite_glyph_string_foreground):
13146 Adjust for the change of lispy gstring.
13147
13148 * xdisp.c (handle_composition_prop): Adjust for the change of
13149 lispy gstring. Call a function for auto-composition with the
13150 third arg it->window.
13151 (fill_composite_glyph_string): Adjust for the change of lispy string.
13152 (x_produce_glyphs): Adjust for the change of font_prepare_compositionl.
13153
13154 * xfaces.c (set_font_frame_param): Adjust for the change of
13155 font_find_for_lface.
13156
13157 * xfont.c (x_font_charset_alist): Move to font.c and rename.
13158 (xfont_registry_charsets): Likewise. Change caller.
13159 (syms_of_xfont): Don't handle x_font_charset_alist.
13160
13161 * xftfont.c: Include "ftfont.h".
13162 (struct xftfont_info) [HAVE_LIBOTF]: New members maybe_otf and otf.
13163 (xftfont_open) [HAVE_LIBOTF]: Initialize the above members.
13164 (xftfont_close) [HAVE_LIBOTF]: Close otf.
13165 (xftfont_shape) [HAVE_LIBOTF, HAVE_M17N_FLT]: New function.
13166 (syms_of_xftfont) [HAVE_LIBOTF, HAVE_M17N_FLT]:
13167 Set xftfont_driver.shape to xftfont_shape.
13168
13169 * xterm.c (x_draw_composite_glyph_string_foreground): Adjust for
13170 the change of lispy gstring.
13171
131722008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
13173
13174 * ftxfont.c (ftxfont_end_for_frame): Fix array indexing error.
13175
131762008-02-01 Jason Rumney <jasonr@gnu.org>
13177
13178 * w32font.c (w32font_draw): Fill background manually.
13179
131802008-02-01 Jason Rumney <jasonr@gnu.org>
13181
13182 * font.c (Qfontp): Remove unused symbol.
13183 (QCantialias): New symbol.
13184 (syms_of_font): Define it.
13185 (font_property_table): Set a validator for QCantialias.
13186
13187 * w32font.c (CLEARTYPE_QUALITY, CLEARTYPE_NATURAL_QUALITY):
13188 Define if not already.
13189 (QCfamily): Share with xfaces.c.
13190 (Qstandard, Qsubpixel, Qnatural): New symbols.
13191 (syms_of_w32font): Define them. Don't define QCfamily here.
13192 (w32_antialias_type, lispy_antialias_type): New functions.
13193 (w32_enumfont_pattern_entity): New arg requested_font.
13194 Set antialias parameter if non-default was requested.
13195 (fill_in_logfont): Fill in lfQuality if :antialias specified.
13196
131972008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
13198
13199 * lread.c (read1): Undo the previous change.
13200
132012008-02-01 CHENG Gao <chenggao@gmail.com> (tiny change)
13202
13203 * frame.c (Fdelete_frame): Call font_update_drivers only when
13204 USE_FONT_BACKEND is defined.
13205
132062008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
13207
13208 * font.h (struct font_bitmap): New member bits_per_pixel.
13209 (struct font_driver): New members start_for_frame and end_for_frame.
13210 (struct font_data_list): New struct.
13211 (font_put_frame_data, font_get_frame_data): Extern them.
13212
13213 * frame.h (struct frame): New member font_data_list.
13214
13215 * font.c (font_update_drivers): Call driver->start_for_frame and
13216 driver->end_for_frame at proper timings.
13217 (font_put_frame_data, font_get_frame_data): New functions.
13218 (Ffont_spec): Add usage in the docstring.
13219
13220 * frame.c (make_frame): Initialize f->font_data_list to NULL.
13221 (Fdelete_frame): Call font_update_drivers.
13222
13223 * xftfont.c (struct xftface_info): Delete the member xft_draw.
13224 (xftfont_prepare_face, xftfont_done_face): Adjust for the above change.
13225 (xftfont_get_xft_draw): New function.
13226 (xftfont_draw): Get XftDraw by xftfont_get_xft_draw.
13227 (xftfont_end_for_frame): New function.
13228 (syms_of_xftfont): Set xftfont_driver.end_for_frame.
13229
13230 * ftxfont.c (ftxfont_get_gcs): Rename from ftxfont_create_gcs.
13231 Change argument. Cache GCs in the per-frame data.
13232 (struct ftxfont_frame_data): New struct.
13233 (ftxfont_draw_bitmap): New arg gc_fore and flush.
13234 (ftxfont_prepare_face, ftxfont_done_face): Delete them.
13235 (ftxfont_draw): Get GCs by ftxfont_get_gcs. Reflect s->clip in GCs.
13236 (ftxfont_end_for_frame): New function.
13237 (syms_of_ftxfont): Set ftxfont_driver.end_for_frame.
13238
13239 * ftfont.c (ftfont_get_bitmap): Set bitmap->bits_per_pixel.
13240
132412008-02-01 Kenichi Handa <handa@m17n.org>
13242
13243 * xselect.c (Vselection_coding_system)
13244 (Vnext_selection_coding_system): Delete them.
13245 (syms_of_xselect): Don't declare selection-coding-system and
13246 next-selection-coding-system. They are declared in select.el.
13247
132482008-02-01 Jason Rumney <jasonr@gnu.org>
13249
13250 * w32term.h (WM_UNICHAR, UNICODE_NOCHAR): Define if not already.
13251
13252 * w32fns.c: Include imm.h.
13253 (get_composition_string_fn, get_ime_context_fn): New optional
13254 system functions.
13255 (globals_of_w32fns): Load them from imm32.dll.
13256 (ignore_ime_char): New flag.
13257 (w32_wnd_proc): Handle WM_UNICHAR, WM_IME_CHAR and
13258 WM_IME_ENDCOMPOSITION messages.
13259
13260 * w32term.c (w32_read_socket) [WM_UNICHAR]: Handle as
13261 MULTIBYTE_CHAR_KEYSTROKE_EVENT.
13262
132632008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
13264
13265 * lread.c (READCHAR): Call readchar with the 2nd arg NULL.
13266 (READCHAR_REPORT_MULTIBYTE): New macro.
13267 (readchar): New 2nd arg MULTIBYTE.
13268 (read1): Use READCHAR_REPORT_MULTIBYTE for the first read.
13269 Make symbol's name multibyte according to the multibyteness of the
13270 source.
13271
132722008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
13273
13274 * xfaces.c (face_for_overlay_string): Call lookup_face with
13275 correct arguments (fix of synching with the trunk).
13276
132772008-02-01 Kenichi Handa <handa@m17n.org>
13278
13279 * font.c (font_prop_validate_symbol, font_prop_validate_style)
13280 (font_prop_validate_non_neg, font_prop_validate_spacing):
13281 Delete argument prop_index.
13282 (font_property_table): Change arguments to validater. Change Callers.
13283 (font_lispy_object): Delete.
13284 (font_at): Use font_find_object instead fo font_lispy_object.
13285
132862008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
13287
13288 * fileio.c (Fexpand_file_name): Adjust multibyteness of directory
13289 and file names.
13290
132912008-02-01 Jason Rumney <jasonr@gnu.org>
13292
13293 * w32font.c (add_font_name_to_list): Avoid vertical fonts.
13294 (font_matches_spec): Remove debug output.
13295 (add_font_entity_to_list): Avoid using substituted fonts.
13296
132972008-02-01 Jason Rumney <jasonr@gnu.org>
13298
13299 * doc.c (Fsnarf_documentation):
13300 * Makefile.in (temacs${EXEEXT}, mostlyclean): Undo last change.
13301
133022008-02-01 Miles Bader <miles@gnu.org>
13303
13304 * dispextern.h (struct glyph_row): Only define "clip" field if
13305 HAVE_WINDOW_SYSTEM is defined.
13306
133072008-02-01 Stefan Monnier <monnier@iro.umontreal.ca>
13308
13309 Fix up multi-tty merge.
13310
13311 * xterm.c (handle_one_xevent): Remove duplicate code and fix up nesting
13312 and indentation.
13313
13314 * xfaces.c (free_realized_face, clear_face_gcs):
13315 Include font_done_for_face in the input_blocked section, just in case.
13316
13317 * xdisp.c (decode_mode_spec): Use terminal-local coding systems.
13318 (get_char_face_and_encoding): Undo last change and remove the *other*
13319 duplicate definition (i.e. keep the one that's better scoped and that
13320 includes code for the font-backend).
13321
13322 * terminal.c (create_terminal): Default keyboard_coding to
13323 `no-conversion' and terminal_coding to `undecided'.
13324
13325 * lread.c (read1): Use XSETPVECTYPE to set a pseudovector's tag.
13326
13327 * fontset.c (free_realized_fontsets): Check that the table entry does
13328 contain a fontset before trying to compare it to `base'.
13329
13330 * emacs.c (main): Move syms_of_data, syms_of_fileio, syms_of_alloc,
13331 syms_of_charset, and syms_of_coding earlier because init_window_once
13332 now needs Vcoding_system_hash_table to be setup.
13333
13334 * coding.h (default_buffer_file_coding): Remove.
13335
13336 * coding.c (default_buffer_file_coding): Remove.
13337 (Fterminal_coding_system, Fkeyboard_coding_system): Use ->id rather
13338 than ->symbol, and use the terminal-local coding system.
13339 (syms_of_coding): Don't setup the coding-systems that are not
13340 terminal-local.
13341 (Fdefine_coding_system_internal): Use XCAR/XCDR.
13342
13343 * chartab.c (Fmake_char_table, make_sub_char_table, copy_char_table):
13344 Use XSETPVECTYPE now that XSETCHAR_TABLE doesn't set the tag anymore.
13345
13346 * alloc.c (Fmake_char_table, make_sub_char_table): Remove. They're now
13347 in chartab.c and were re-added here by mistake.
13348 (Fpurecopy): Use XSETPVECTYPE after copying a COMPILED pseudovector.
13349
13350 * doc.c (Fsnarf_documentation):
13351 * Makefile.in (temacs${EXEEXT}, mostlyclean): Move buildobj.lst from
13352 src to etc.
13353
13354 * ChangeLog.10: Add mistakenly removed entry.
13355
133562008-02-01 Dan Nicolaescu <dann@ics.uci.edu>
13357
13358 * Makefile.in (fringe.o, minibuf.o): Fix dependencies.
13359
133602008-02-01 Miles Bader <miles@gnu.org>
13361
13362 * xdisp.c (get_char_face_and_encoding): Remove extraneous definition.
13363 Add extra args to FACE_FOR_CHAR.
13364
133652008-02-01 Kenichi Handa <handa@m17n.org>
13366
13367 * keymap.c (where_is_internal_1): If key is a cons, store the copy
13368 in sequence.
13369
13370 * chartab.c (map_sub_char_table, map_char_table): If the range
13371 contains just one character, call the function with that character
13372 even if the depth is not 3.
13373
133742008-02-01 Jason Rumney <jasonr@gnu.org>
13375
13376 * w32font.c (w32font_text_extents): Calculate metrics for the
13377 whole string.
13378
133792008-02-01 Jason Rumney <jasonr@gnu.org>
13380
13381 * w32xfns.c (get_next_msg): Consolidate WM_PAINT messages.
13382
133832008-02-01 Jason Rumney <jasonr@gnu.org>
13384
13385 * w32term.c (x_set_glyph_string_clipping): Use
13386 get_glyph_string_clip_rects.
13387 (x_set_glyph_string_clipping_exactly, x_draw_glyph_string):
13388 Adjust for the change of struct glyph_string.
13389
13390 * w32font.c (w32font_draw): Do clipping here.
13391
133922008-02-01 Kenichi Handa <handa@m17n.org>
13393
13394 * xftfont.c (xftfont_draw): Adjust for the change of struct
13395 glyph_string.
13396
13397 * xterm.c (x_set_glyph_string_clipping): Use
13398 get_glyph_string_clip_rects.
13399 (x_set_glyph_string_clipping_exactly, x_draw_glyph_string):
13400 Adjust for the change of struct glyph_string.
13401
13402 * xdisp.c (get_glyph_string_clip_rects): Reflect s->row->clip to
13403 the resulting clip(s}.
13404 (expose_overlaps): Add arg r. Change callers. Set it to
13405 row->clip temporarily.
13406 (expose_window): Redraw rows overlapping the exposed area.
13407
13408 * dispextern.h (struct glyph_row): New member clip.
13409 (struct glyph_string): Delete members clip_x, clip_y, clip_width,
13410 clip_height, new member clip, and num_clips.
13411
134122008-02-01 Kenichi Handa <handa@m17n.org>
13413
13414 * data.c (Fchar_or_string_p): Fix docstring.
13415
134162008-02-01 Kenichi Handa <handa@m17n.org>
13417
13418 * xftfont.c (xftfont_draw): If s->font_info != s->face->font_info,
13419 create a temporary XftDraw object.
13420
134212008-02-01 Kenichi Handa <handa@m17n.org>
13422
13423 * font.c (Ffontp): Fix docstring.
13424
13425 * coding.c (detect_coding_iso_2022): Don't treat SI/SO codes as a
13426 strong evidence of ISO-2022.
13427
134282008-02-01 Kenichi Handa <handa@m17n.org>
13429
13430 * abbrev.c (abbrev_check_chars): Use CHAR_TABLE_REF, not
13431 SYNTAX_ENTRY_FOLLOW_PARENT.
13432
134332008-02-01 Stefan Monnier <monnier@iro.umontreal.ca>
13434
13435 * fns.c (weak_hash_tables): Rename from Vweak_hash_tables and change
13436 its type.
13437 (make_hash_table, copy_hash_table, sweep_weak_hash_tables, init_fns):
13438 Update to the new type of weak_hash_tables and next_weak.
13439
13440 * lisp.h (struct Lisp_Hash_Table): Change next_weak from Lisp_Object to
13441 a plain C pointer to Lisp_Hash_Table.
13442
13443 * lisp.h (XGCTYPE, GC_HASH_TABLE_P, GC_NILP, GC_NUMBERP, GC_NATNUMP)
13444 (GC_INTEGERP, GC_SYMBOLP, GC_MISCP, GC_VECTORLIKEP, GC_STRINGP)
13445 (GC_CONSP, GC_FLOATP, GC_VECTORP, GC_OVERLAYP, GC_MARKERP)
13446 (GC_INTFWDP, GC_BOOLFWDP, GC_OBJFWDP, GC_BUFFER_OBJFWDP)
13447 (GC_BUFFER_LOCAL_VALUEP, GC_SOME_BUFFER_LOCAL_VALUEP)
13448 (GC_KBOARD_OBJFWDP, GC_PSEUDOVECTORP, GC_WINDOW_CONFIGURATIONP)
13449 (GC_PROCESSP, GC_WINDOWP, GC_SUBRP, GC_COMPILEDP, GC_BUFFERP)
13450 (GC_SUB_CHAR_TABLE_P, GC_CHAR_TABLE_P, GC_BOOL_VECTOR_P, GC_FRAMEP)
13451 (GC_EQ): Remove since they've been identical to their non-GC_
13452 alter-egos ever since the markbit was eradicated.
13453
13454 * alloc.c:
13455 * buffer.c:
13456 * buffer.h:
13457 * data.c:
13458 * fileio.c:
13459 * filelock.c:
13460 * fns.c:
13461 * frame.h:
13462 * lisp.h:
13463 * macterm.c:
13464 * print.c:
13465 * process.c:
13466 * w32fns.c:
13467 * w32menu.c:
13468 * w32term.c:
13469 * xfns.c:
13470 * xmenu.c:
13471 * xterm.c: Replace uses of GC_* macros with the non-GC_ versions.
13472
134732008-02-01 Kenichi Handa <handa@m17n.org>
13474
13475 * chartab.c (map_sub_char_table): Make it work for the top-level
13476 char-table. Fix handling of parent char-table.
13477 (map_char_table): Adjust for the above change.
13478
134792008-02-01 Jason Rumney <jasonr@gnu.org>
13480
13481 * w32font.c (Qgdi): Rename from Qw32.
13482
134832008-02-01 Jason Rumney <jasonr@gnu.org>
13484
13485 * w32bdf.c (get_quoted_string): Make function static.
13486
134872008-02-01 Kenichi Handa <handa@m17n.org>
13488
13489 * xftfont.c (xftfont_open): If one of font's ASCII glyph has
13490 bigger ascent and descent than those of the font, use them as
13491 font's ascent and descent.
13492
134932008-02-01 Kenichi Handa <handa@m17n.org>
13494
13495 * Makefile.in (${lispsource}international/charprop.el): Move this
13496 target within "#ifdef HAVE_UNIDATA" and "#endif".
13497
134982008-02-01 Kenichi Handa <handa@m17n.org>
13499
13500 * Makefile.in (lisp): Add ${lispsource}language/tai-viet.el.
13501 (shortlisp): Add ../lisp/language/tai-viet.el.
13502
135032008-02-01 Ulrich Mueller <ulm@gentoo.org>
13504
13505 * Makefile.in (${lispsource}international/charprop.el): Depend on
13506 temacs${EXEEXT}.
13507
135082008-02-01 Jason Rumney <jasonr@gnu.org>
13509
13510 * w32font.c (w32font_close): Delete the GDI font object.
13511
13512 * w32menu.c: Include character.h.
13513
13514 * w32proc.c: Likewise.
13515
13516 * w32select.c: Likewise.
13517
13518 * makefile.w32-in (w32proc.o): Depend on character.h.
13519
135202008-02-01 Jason Rumney <jasonr@gnu.org>
13521
13522 * w32fns.c (syms_of_w32fns): Use DEFSYM macro.
13523
13524 * w32menu.c (syms_of_w32menu): Likewise.
13525
13526 * w32proc.c (syms_of_ntproc): Likewise.
13527
13528 * w32select.c (syms_of_w32select): Likewise.
13529
13530 * w32term.c (syms_of_w32term): Likewise.
13531
135322008-02-01 Jason Rumney <jasonr@gnu.org>
13533
13534 * w32font.c (w32font_draw): Delete brush after using it.
13535
135362008-02-01 Jason Rumney <jasonr@gnu.org>
13537
13538 * w32font.c (w32font_open): Don't set font_idx.
13539 (w32font_text_extents): Try GetTextExtentPoint32W before defaulting
13540 to font settings.
13541 (w32font_draw): Fill background explicitly.
13542
135432008-02-01 Jason Rumney <jasonr@gnu.org>
13544
13545 * w32term.c (w32_initialize): Don't call w32font_initialize.
13546
13547 * w32font.c (w32font_info): Remove subranges.
13548 (QCsubranges, Qmodern, Qswiss, Qroman): Remove.
13549 (QCfamily, Qmonospace, Qsans_serif, Qmono, Qsans, Qsans__serif)
13550 (Qraster, Qoutline, Qlatin, Qgreek, Qcoptic, Qcyrillic, Qarmenian)
13551 (Qhebrew, Qarabic, Qsyriac, Qnko, Qthaana, Qdevanagari, Qbengali)
13552 (Qgurmukhi, Qgujarati, Qoriya, Qtamil, Qtelugu, Qkannada)
13553 (Qmalayalam, Qsinhala, Qthai, Qlao, Qtibetan, Qmyanmar, Qgeorgian)
13554 (Qhangul, Qethiopic, Qcherokee, Qcanadian_aboriginal, Qogham)
13555 (Qrunic, Qkhmer, Qmongolian, Qsymbol, Qbraille, Qhan)
13556 (Qideographic_description, Qcjk_misc, Qkana, Qbopomofo, Qkanbun)
13557 (Qyi, Qbyzantine_musical_symbol, Qmusical_symbol, Qmathematical):
13558 New symbols.
13559 (font_callback_data): New struct.
13560 (w32font_list, w32font_match): Use it.
13561 (w32font_open): Don't populate subranges.
13562 (w32font_has_char): Use script Lisp symbols, not subrange bitmask.
13563 (w32font_encode_char): Always return unicode code-point as-is.
13564 (w32font_text_extents): Supply a transformation matrix to
13565 GetGlyphOutline. Never look up by glyph index. Avoid looping
13566 twice. Use unicode version of GetTexExtentPoint32 instead of
13567 glyph index version.
13568 (set_fonts_frame): Remove.
13569 (w32_enumfont_pattern_entity): Add frame parameter, use it to
13570 set frame parameter. Use backward compatible fake foundries.
13571 Save generic family in extra slot under QCfamily. Make width slot
13572 constant. Save QCspacing value. Save list of scripts instead of
13573 binary subranges.
13574 (w32_generic_family, logfonts_match, font_matches_spec): New functions.
13575 (add_font_entity_to_list): Use font_callback_data struct. Filter
13576 unwanted fonts.
13577 (add_one_font_entity_to_list): Use font_callback_data struct.
13578 (w32_registry): Default to iso10646_1.
13579 (fill_in_logfont): Use dpi from extra slot. Don't bother with
13580 string font registries. Don't fill in font name if it is a generic
13581 family name, fill family instead. Use spacing, family and script
13582 extra info to fill pitch, family and charset fields.
13583 (list_all_matching_fonts): Use font_callback_data struct.
13584 (unicode_range_for_char): Remove.
13585 (font_supported_scripts): New function.
13586 (w32font_initialize): Remove.
13587 (syms_of_w32font): Update which symbols are defined.
13588
135892008-02-01 Jason Rumney <jasonr@gnu.org>
13590
13591 * font.c (font_pixel_size): Reverse assq_no_quit args.
13592
13593 * w32term.h (FONT_WIDTH): Report max width, not average.
13594 (FONT_MAX_WIDTH): Remove.
13595 (FONT_AVG_WIDTH): New macro.
13596
13597 * xfaces.c (Fx_list_fonts) [WINDOWSNT]: Remove Windows only
13598 redefinition of FONT_WIDTH.
13599
13600 * w32term.c (x_font_min_bounds): Use FONT_AVG_WIDTH.
13601 (w32_cache_char_metrics): Use FONT_WIDTH.
13602
13603 * w32fns.c (w32_load_system_font, w32_list_fonts): Use FONT_AVG_WIDTH.
13604
136052008-02-01 Jason Rumney <jasonr@gnu.org>
13606
13607 * w32font.c (w32font_open): Make lfHeight negative.
13608
13609 * w32fns.c (x_default_font_parameter): Use new style font name.
13610 (Fx_create_frame, x_create_tip_frame): Initialize resx and resy.
13611
136122008-02-01 Jason Rumney <jasonr@gnu.org>
13613
13614 * w32font.c (QCsubranges): New symbol.
13615 (w32font_open, w32font_has_char): Get subranges from subproperty
13616 of extra.
13617 (w32_enumfont_pattern_entity): Set subranges as subproperty of extra.
13618 (syms_of_w32font): Define :subranges symbol.
13619
13620 * font.c (font_put_extra): Expose externally.
13621
13622 * font.h (font_put_extra): Move declaration from font.c.
13623
13624 * font.c (Ffont_get): Use font driver to determine otf capability.
13625 (adjust_anchor): Check if driver defines anchor_point before using.
13626
13627 * w32font.c (w32font_open): Handle size, height and pixel_size better.
13628 (w32font_draw): Use options.
13629 (w32_enumfont_pattern_entity): Set size to 0 for scalable fonts.
13630 Fix detection of truetype fonts.
13631 (registry_to_w32_charset): Handle charsets other than iso8859-1
13632 expressed as lisp symbols.
13633 (w32_registry): Express charset as lisp symbol.
13634 (fill_in_logfont): Reverse pixel and point height logic.
13635 Don't set width here. Set quality to default.
13636
13637 * w32fns.c (w32_load_system_font): Fix detecting FIXED_PITCH fonts.
13638 (x_to_w32_font): Fill in lfPitchAndFamily correctly.
13639
13640 * xterm.c (x_draw_glyph_string_foreground) [USE_FONT_BACKEND]:
13641 Remove redundant loop and allocation.
13642
13643 * makefile.w32-in (font.o, w32font.o): New objects.
13644 (fontset.o, xdisp.o, xfaces.o, w32fns.o, w32term.o): Depend on font.h.
13645 (FONTOBJ): New group of objects conditioned on USE_FONT_BACKEND.
13646
13647 * xdisp.c (fill_composite_glyph_string): Make the first arg to
13648 STORE_XCHARB a valid l-value.
13649
13650 * w32term.c (w32_native_per_char_metric): Swap width and rbearing
13651 calculations for non-Truetype fonts.
13652 (x_draw_glyph_string): Sync with xterm.c.
13653 (x_draw_glyph_string_foreground) [USE_FONT_BACKEND]:
13654 Remove redundant code.
13655 (w32_initialize) [USE_FONT_BACKEND]: Call w32font_initialize.
13656
13657 * w32term.h (w32_output_data) [USE_FONT_BACKEND]: Add fontp member.
13658 (FRAME_FONT_OBJECT) [USE_FONT_BACKEND]: New macro from xterm.h.
13659
13660 * w32fns.c [USE_FONT_BACKEND]: Port font backend changes from xfns.c.
13661 (x_to_w32_charset, w32_to_x_charset): Expose externally.
13662
13663 * w32font.c: New file for w32 font backend.
13664
136652008-02-01 Kenichi Handa <handa@m17n.org>
13666
13667 * term.c: Don't include "buffer.h" twice.
13668
136692008-02-01 Kenichi Handa <handa@m17n.org>
13670
13671 * character.c (Funibyte_string): New function.
13672 (syms_of_character): Defsubr it.
13673
136742008-02-01 Jason Rumney <jasonr@gnu.org>
13675
13676 * w32term.c [USE_FONT_BACKEND]:
13677 (x_get_font_repertory, note_mouse_movement, x_set_mouse_face_gc)
13678 (x_set_glyph_string_clipping, x_set_glyph_string_clipping_exactly)
13679 (x_draw_glyph_string, x_draw_glyph_string_foreground)
13680 (x_draw_composite_glyph_string_foreground, x_new_fontset2)
13681 (x_free_frame_resources): Sync with xterm.c.
13682
136832008-02-01 Andreas Schwab <schwab@suse.de>
13684
13685 * lread.c (read1): Use CHAR_TABLE_STANDARD_SLOTS to validate
13686 char-table size.
13687
136882008-02-01 Kenichi Handa <handa@m17n.org>
13689
13690 * font.c (check_otf_features): Define it regardless of HAVE_LIBOTF.
13691
136922008-02-01 Kenichi Handa <handa@m17n.org>
13693
13694 * ftfont.c (ftfont_driver): Delete font_otf_gsub and
13695 font_otf_gpos, add font_drive_otf.
13696
13697 * fontset.c (fontset_find_font): Pay attention to font size
13698 specified for a font.
13699 (reorder_font_vector): Check contents of font_def.
13700
13701 * font.c (struct otf_list): Delete it.
13702 (otf_list): Make it a lisp variable.
13703 (otf_open): Use lispy otf_list.
13704 (generate_otf_features): Rename from parse_gsub_gpos_spec.
13705 (check_otf_features): New function.
13706 (font_otf_DeviceTable, font_otf_ValueRecord, font_otf_Anchor):
13707 New functions.
13708 (font_drive_otf): New function merging font_otf_gsub and
13709 font_otf_gpos.
13710 (font_open_for_lface): New arg spec. Change argument order.
13711 (font_load_for_face): Adjust for the change of font_open_for_lface.
13712 (Ffont_drive_otf): New function merging Ffont_otf_gsub and
13713 Ffont_otf_gpos.
13714 (syms_of_font): Staticpro otf_list. Delete defsubr of
13715 Sfont_otf_gsub and Sfont_otf_gpos. Defsubr Sfont_drive_otf.
13716
13717 * xfaces.c (set_font_frame_param): Adjust for the change of
13718 font_open_for_lface.
13719
13720 * font.h (font_open_for_lface): Adjust prototype.
13721 (struct font_driver): Delete members otf_gsub and otf_gpos, add
13722 member otf_drive.
13723 (font_otf_gsub, font_otf_gpos): Delete externs.
13724 (font_drive_otf): Extern it.
13725
137262008-02-01 Kenichi Handa <handa@m17n.org>
13727
13728 * font.c (font_at): If the window W is not on a window system,
13729 return Qnil.
13730
13731 * coding.c (produce_chars, encode_coding): Don't call
13732 insert_from_gap if no characters to produce.
13733
137342008-02-01 Kenichi Handa <handa@m17n.org>
13735
13736 * fontset.c (free_realized_fontsets): Avoid unnecessary call of
13737 Fclear_face_cache.
13738
13739 * xfaces.c (face_for_font): Check also face->font==font->font.font.
13740
137412008-02-01 Miles Bader <miles@gnu.org>
13742
13743 * emacs.c (main): Change default value of `enable_font_backend' to 1.
13744 Parse "--disable-font-backend" option.
13745 (standard_args): Add "--disable-font-backend" option.
13746
137472008-02-01 Kenichi Handa <handa@m17n.org>
13748
13749 * fontset.c (fontset_find_font): New function.
13750 (fontset_font): Use fontset_find_font.
13751 (make_fontset_for_ascii_face): Don't set face ID in rfont_def.
13752 Register the specified font for all Latin characters.
13753 (new_fontset_from_font): Register the specified font for all Latin
13754 characters.
13755 (dump_fontset): For a realized fontset, include the base fontset
13756 name in the returned vector.
13757
137582008-02-01 Kenichi Handa <handa@m17n.org>
13759
13760 * character.h (CHAR_STRING): Cast C to unsigned on calling
13761 char_string.
13762
13763 * character.c (char_string): Type of arg C changed to unsigned.
13764 Signal an error if C is an invalid character code.
13765
13766 * editfns.c (general_insert_function, Fchar_to_string):
13767 Use CHARACTERP, not INTEGERP.
13768
137692008-02-01 Kenichi Handa <handa@m17n.org>
13770
13771 * character.h (MIN_MULTIBYTE_LEADING_CODE)
13772 (MAX_MULTIBYTE_LEADING_CODE): New macros.
13773
13774 * regex.c (analyse_first): Fix for multibyte characters in "case
13775 charset:" and "case categoryspec:".
13776
137772008-02-01 Andreas Schwab <schwab@suse.de>
13778
13779 * Makefile.in (LIBES): Move standard libraries to the end.
13780
137812008-02-01 Kenichi Handa <handa@m17n.org>
13782
13783 * alloc.c (Fgarbage_collect): If nextb->text->inhibit_shrinking is
13784 nonzero, don't shrink the buffer nextb.
13785
13786 * buffer.h (struct buffer_text): New member inhibit_shrinking.
13787
13788 * coding.c (coding_alloc_by_making_gap): New arg offset.
13789 (alloc_destination): Call coding_alloc_by_making_gap with the arg
13790 offset.
13791 (decode_coding_iso_2022): Update coding->safe_charsets.
13792 (decode_coding_gap): Temporarily set
13793 current_buffer->text->inhibit_shrinking to 1.
13794
137952008-02-01 Kenichi Handa <handa@m17n.org>
13796
13797 * xterm.c (x_draw_composite_glyph_string_foreground): Fix
13798 indexing into elements of s->cmp and s->char2b.
13799
138002008-02-01 Juanma Barranquero <lekktu@gmail.com>
13801
13802 * regex.c (RE_STRING_CHAR_AND_LENGTH) [! emacs]: Add missing arg `len'.
13803
138042008-02-01 Kenichi Handa <handa@m17n.org>
13805
13806 * regex.c (GET_CHAR_BEFORE_2, GET_CHAR_AFTER): Check the variable
13807 target_multibyte instead of multibyte.
13808 (re_match_2_internal): Call bcmp_translate with target_multibyte.
13809 (bcmp_translate): Change the argument name from multibyte to
13810 target_multibyte.
13811
138122008-02-01 Kenichi Handa <handa@m17n.org>
13813
13814 These changes are to compile a regexp into a pattern that can be
13815 used both for multibyte and unibyte targets.
13816
13817 * Makefile.in (search.o): Depend on charset.h.
13818
13819 * character.c (multibyte_char_to_unibyte_safe): New function.
13820
13821 * search.c: Include "charset.h".
13822 (compile_pattern_1): Delete argument multibyte. Don't set
13823 cp->buf.target_multibyte here. Set cp->buf.charset_unibyte.
13824 (compile_pattern): Don't compare cp->buf.target_multibyte.
13825 Compare cp->buf.charset_unibyte.
13826 (compile_pattern): Set cp->buf.target_multibyte.
13827
13828 * lisp.h (multibyte_char_to_unibyte_safe): Extern it.
13829
13830 * regex.h (struct re_pattern_buffer): New member charset_unibyte.
13831
13832 * regex.c (RE_STRING_CHAR, RE_STRING_CHAR_AND_LENGTH): New arg
13833 multibyte. Change callers.
13834 (RE_CHAR_TO_MULTIBYTE, RE_CHAR_TO_UNIBYTE): New macros.
13835 (MAKE_CHAR_MULTIBYTE, MAKE_CHAR_UNIBYTE): Delete. Change callers
13836 to use RE_CHAR_TO_MULTIBYTE and RE_CHAR_TO_UNIBYTE, respectively.
13837 (SETUP_ASCII_RANGE, SETUP_UNIBYTE_RANGE): New macros.
13838 (SETUP_MULTIBYTE_RANGE): Generate a more compact range_table.
13839 (regex_compile): Make the compiled pattern usable both for
13840 multibyte and unibyte targets.
13841 (analyse_first): Make the fastmap usable both for multibyte and
13842 unibyte targets.
13843 (TRANSLATE_VIA_MULTIBYTE): Delete.
13844 (re_match_2_internal): Pay attention to the case that the
13845 multibyteness of bufp and target may be different.
13846
138472008-02-01 Kenichi Handa <handa@m17n.org>
13848
13849 * xdisp.c (x_produce_glyphs): When a font is not found, make the
13850 empty box occupy at least one column width.
13851
138522008-02-01 Miles Bader <miles@gnu.org>
13853
13854 * Makefile.in: Remove redundant HAVE_XFT clause.
13855
138562008-02-01 Kenichi Handa <handa@m17n.org>
13857
13858 * xrdb.c (x_load_resources): Setup the default fontSet X resource.
13859
138602008-02-01 Kenichi Handa <handa@m17n.org>
13861
13862 * fontset.c (Finternal_char_font): Fix for the case of POSITION
13863 being nil.
13864
138652008-02-01 Kenichi Handa <handa@m17n.org>
13866
13867 * xftfont.c (xftfont_open): Call FcConfigSubstitute.
13868
138692008-02-01 Kenichi Handa <handa@m17n.org>
13870
13871 * xftfont.c (xftfont_open): Don't enable antialias explicitly.
13872
138732008-02-01 Kenichi Handa <handa@m17n.org>
13874
13875 * search.c (simple_search): Fix previous change.
13876
138772008-02-01 Kenichi Handa <handa@m17n.org>
13878
13879 * xftfont.c (ftfont_font_format): Extern declaration.
13880
13881 * frame.c (x_set_font): Fix the second arg to fs_query_fontset.
13882
13883 * xfont.c (xfont_driver): Initialize ftfont_driver.type by 0.
13884 (xfont_list): Don't directly use Lisp_Object as an operand of &&.
13885
13886 * ftfont.c (ftfont_driver): Initialize ftfont_driver.type by 0.
13887 (ftfont_font_format): Fix previous change.
13888
13889 * font.h (Ffont_xlfd_name): EXFUN it.
13890
13891 * font.c (font_parse_xlfd): Fix the array size of `f'.
13892 (register_font_driver): Use EQ to compare driver->type.
13893
13894 * xfns.c (xic_create_xfontset2) [USE_FONT_BACKEND]: New function.
13895 (create_frame_xic) [USE_FONT_BACKEND]: Call xic_create_xfontset2.
13896 (xic_set_xfontset) [USE_FONT_BACKEND]: Likewise.
13897
138982008-02-01 Kenichi Handa <handa@m17n.org>
13899
13900 * ftfont.c (ftfont_pattern_entity, ftfont_list_generic_family)
13901 (ftfont_list, ftfont_font_format): Check if FC_FONTFORMAT is defined.
13902
139032008-02-01 Kenichi Handa <handa@m17n.org>
13904
13905 * xfont.c (xfont_open): Set font->format.
13906
13907 * xftfont.c (xftfont_open): Set font->format.
13908
13909 * ftfont.c (ftfont_pattern_entity): Add fontformat in a pattern.
13910 (ftfont_list): Include FC_FONTFORMAT in FcObject.
13911 (ftfont_open): Set font->format.
13912 (ftfont_font_format): New function.
13913
13914 * font.h (struct font): New member format.
13915
13916 * font.c (Qopentype): New variable.
13917 (syms_of_font): Defsym it.
13918 (Fquery_font): Change the format of the last element of the return
13919 value.
13920
139212008-02-01 Kenichi Handa <handa@m17n.org>
13922
13923 * xfns.c (xic_create_xfontset): Try the default fontset name as a
13924 last resort.
13925
139262008-02-01 Kenichi Handa <handa@m17n.org>
13927
13928 * coding.c (detect_coding_charset): Fix detection of multi-byte
13929 charset.
13930
139312008-02-01 Bob Halley <halley@play-bow.org> (tiny change)
13932
13933 * ccl.c (ccl_driver): If DST is NULL, set ccl->produced to 0.
13934
139352008-02-01 Kenichi Handa <handa@m17n.org>
13936
13937 * xdisp.c (get_next_display_element): Set it->face_id for the
13938 first component of a composition.
13939 (x_produce_glyphs): Check if the font is changed or not for composition.
13940
139412008-02-01 Kenichi Handa <handa@m17n.org>
13942
13943 * fontset.c (Qlatin): New variable.
13944 (syms_of_fontset): Define it as a lisp symbol.
13945 (Fset_fontset_font): If TARGET is `latin', use FONT_SPEC for ASCII.
13946
139472008-02-01 Kenichi Handa <handa@m17n.org>
13948
13949 * font.c (font_unparse_fcname): Pay attention to the case that
13950 some of font property is a null string.
13951
139522008-02-01 Kenichi Handa <handa@m17n.org>
13953
13954 * term.c: Include "composite.h".
13955 (encode_terminal_code): Output all components of composition.
13956 Check the size of encode_terminal_src.
13957 (produce_glyphs): For composition, call produce_composite_glyph.
13958 (append_composite_glyph, produce_composite_glyph): New functions.
13959
13960 * xdisp.c (x_produce_glyphs): In handling composition, if a font
13961 is not found, get font_info from the current ascii face.
13962
139632008-02-01 Kenichi Handa <handa@m17n.org>
13964
13965 * fileio.c (Finsert_file_contents): On replacing, temporarily bind
13966 buffer-file-name to Qnil before calling insert_from_buffer.
13967
13968 * font.c (font_unparse_fcname): Pay attention to the case that
13969 foundry is a null string.
13970
139712008-02-01 Kenichi Handa <handa@m17n.org>
13972
13973 * ftfont.c (ftfont_list): Allow registry "unicode-sip".
13974
13975 * font.c (Qunicode_sip): New variable.
13976 (syms_of_font): Declare it as a Lisp symbol.
13977
13978 * font.h (Qunicode_sip): Extern it.
13979
139802008-02-01 Kenichi Handa <handa@m17n.org>
13981
13982 * composite.c (get_composition_id): Pay attention to TAB component.
13983
13984 * xterm.c (x_draw_composite_glyph_string_foreground): Don't draw
13985 TAB. Adjust for the change of s->char2b which always points to
13986 the first element of allocated memory.
13987
13988 * xftfont.c (xftfont_text_extents): Fix calculation of descent value.
13989
13990 * xdisp.c (handle_composition_prop): Set it->c to the first
13991 non-TAB component.
13992 (fill_composite_glyph_string): Change argument.
13993 (BUILD_COMPOSITE_GLYPH_STRING): Adjust for the above change.
13994 (x_produce_glyphs): Fix handling of left/right padding.
13995
139962008-02-01 Kenichi Handa <handa@m17n.org>
13997
13998 * coding.c (detect_coding_system): Fix for handling off
13999 inhibit_iso_escape_detection. Fix for the case that no coding
14000 system is defined for a specific coding category.
14001
140022008-02-01 Kenichi Handa <handa@m17n.org>
14003
14004 * font.c (font_matching_entity): Delete unused local var.
14005
14006 * xftfont.c (xftfont_open): Call XftDefaultSubstitute before
14007 opening a font.
14008
14009 * fileio.c (Finsert_file_contents): On recovering a file, assume
14010 Unix-like eol.
14011 (choose_write_coding_system): On auto-saving a file, force
14012 Unix-like eol.
14013
14014 * coding.c (setup_coding_system): Fix setting of
14015 coding->common_flags based on eol_type.
14016 (coding_inherit_eol_type): If PARENT is not nil, be sure to
14017 inherit from it.
14018
140192008-02-01 Kenichi Handa <handa@m17n.org>
14020
14021 * alloc.c (NSTATICS): Increas to 0x600.
14022
140232008-02-01 Kenichi Handa <handa@m17n.org>
14024
14025 * ftfont.c (ftfont_driver): Set ftfont_driver.match to ftfont_match.
14026 (ftfont_list): Don't check :name property.
14027 (ftfont_match): New function.
14028 (ftfont_pattern_entity): If the pattern doesn't contain
14029 FC_SPACING, don't assume FC_MONO.
14030
14031 * font.h (struct font_driver): New member `match'.
14032 (font_update_drivers): Adjust prototype.
14033
14034 * font.c (font_parse_fcname, font_parse_name): Don't change :name
14035 property of FONT.
14036 (LGSTRING_HEADER_SIZE, LGSTRING_GLYPH_SIZE, check_gstring): Define
14037 them unconditionally.
14038 (font_matching_entity): New function.
14039 (font_open_by_name): Try font_matching_entity if exact match is
14040 not found.
14041 (font_update_drivers): Delete the arg FONT. Return a list of
14042 actually used backends. Don't free faces, font caches here.
14043 Don't store data in frame parameters. Don't call x_set_font.
14044 (Ffont_spec): Store :name property as is.
14045 (Ffont_get): Check HAVE_LIBOTF before calling font_otf_capability.
14046 (Ffont_otf_gsub): Call font->driver->otf_gsub instead of font_otf_gsub.
14047 (Ffont_otf_gpos): Call font->driver->otf_gpos instead of font_otf_gpos.
14048 (Ffont_otf_alternates): Check if the driver has otf_gsub function.
14049 Call font->driver->otf_gsub instead of font_otf_gsub.
14050
14051 * frame.c (x_set_font_backend): Do more works that were done in
14052 font_update_drivers before.
14053
14054 * xfont.c (xfont_match): New function.
14055 (xfont_driver): Set xfont_driver.match to xfont_match.
14056 (xfont_draw): Set font in GC if necessary.
14057
14058 * ftxfont.c (ftxfont_match): New function.
14059 (syms_of_ftxfont): Set ftxfont_driver.match to ftxfont_match.
14060
14061 * xftfont.c (xftfont_match): New function.
14062 (syms_of_xftfont): Set xftfont_driver.match to xftfont_match.
14063
140642008-02-01 Kenichi Handa <handa@m17n.org>
14065
14066 * font.h (struct font): New member scalable.
14067 (struct font_driver): New arg ALTERANTE_SUBST to otf_gsub.
14068 (font_otf_gsub): Adjust prototype.
14069
14070 * font.c (font_otf_capability): Fix handling of the default langsys.
14071 (parse_gsub_gpos_spec): Change type to void. New arg nbytes.
14072 Check the contents of SPEC.
14073 (LGSTRING_HEADER_SIZE, LGSTRING_GLYPH_SIZE): New macros.
14074 (check_gstring): New function.
14075 (REPLACEMENT_CHARACTER): New macro.
14076 (font_otf_gsub): New arg alternate_subst. Be sure to set all
14077 glyph codes of GSTRING.
14078 (font_otf_gpos): Be sure to set all glyph codes of GSTRING.
14079 (font_prepare_composition): Set cmp->glyph_len.
14080 (font_open_entity): Set font->scalable.
14081 (Ffont_get): Handle :otf property.
14082 (Ffont_otf_gsub, Ffont_otf_gpos, Ffont_otf_alternates): New
14083 functions.
14084 (Fquery_font): Use font->font.full_name.
14085 (syms_of_font): Defsubr Sfont_otf_gsub, Sfont_otf_gpos, and
14086 Sfont_otf_alternates.
14087
14088 * ftfont.c (ftfont_open): Set font->font.full_name and
14089 font->font.name properly. Fix calculation of font->font.height
14090 and font->min_width.
14091
14092 * ftxfont.c (ftxfont_create_gcs): New function.
14093 (ftxfont_draw_bitmap): Fix arg to ftfont_driver.get_bitmap.
14094 (ftxfont_draw_backgrond): Fix filling region.
14095 (ftxfont_default_fid): New function.
14096 (ftxfont_open): Set xfont->fid to the return value of
14097 ftxfont_default_fid.
14098 (ftxfont_prepare_face): Use ftxfont_create_gcs to create GCs.
14099 (ftxfont_done_face): Free only GCs that are created by
14100 ftxfont_create_gcs.
14101 (ftxfont_draw): If face->gc != s->gc, create proper GCs.
14102
14103 * xterm.c (x_set_glyph_string_clipping_exactly) [USE_FONT_BACKEND]:
14104 Clip to src->width, etc (not src->clip_XXX).
14105
14106 * xfns.c (x_create_tip_frame) [USE_FONT_BACKEND]: Handle
14107 FontBackend frame parameter.
14108
141092008-02-01 Kenichi Handa <handa@m17n.org>
14110
14111 * font.h (struct font_driver_list): New member `on'.
14112 (Fclear_font_cache): EXFUN it.
14113 (font_update_drivers): Extern it.
14114
14115 * font.c (font_unparse_fcname): Fix typo (swidth->width).
14116 (font_list_entities): Check driver_list->on.
14117 (register_font_driver): Initalize `on' member to 0.
14118 (font_update_drivers): New function.
14119 (Fclear_font_cache): Check driver_list->on.
14120
14121 * frame.h (Qfont_backend): Extern it.
14122 (x_set_font_backend): Extern it.
14123
14124 * frame.c (Qfont_backend): New variable.
14125 (frame_parms): New element for font-backend.
14126 (x_set_font_backend): New function.
14127
14128 * xfns.c (Fx_create_frame) [USE_FONT_BACKEND]: Handle
14129 FontBackend frame parameter.
14130 (x_frame_parm_handlers) [USE_FONT_BACKEND]: New element
14131 x_set_font_backend.
14132
14133 * xfont.c (xfont_list): Don't try listing by :name property if the
14134 name is not for XLFD.
14135
141362008-02-01 Kenichi Handa <handa@m17n.org>
14137
14138 * font.h (LGLYPH_FROM, LGLYPH_TO, LGLYPH_SET_FROM)
14139 (LGLYPH_SET_TO): New macros.
14140 (LGLYPH_XOFF, LGLYPH_YOFF, LGLYPH_WADJUST): Check if adjustment
14141 element of G is vector or not.
14142 (font_at): Extern it.
14143
14144 * font.c: Include window.h.
14145 (font_lispy_object): New function.
14146 (font_prepare_composition): Check LGLYPH_FORM (g) to detect the
14147 end of valid glyph.
14148 (font_close_object): Fix getting (struct font *).
14149 (font_at): New function.
14150 (Ffont_get): If FONT is a font-object, get entity from it.
14151 (Ffont_make_gstring): Initialize elements of glyphs with nil.
14152 (Ffont_fill_gstring): Use macro LGSTRING_XXX and LGLYPH_XXX. Fix
14153 range check.
14154 (Ffont_at): New function.
14155 (syms_of_font): Defsubr Sfont_at.
14156
14157 * xdisp.c (it_props): Move the entry for Qauto_composed to just
14158 before the entry for Qcomposition.
14159 (handle_auto_composed_prop): Call auto-composition-function with 4 args.
14160 (handle_composition_prop) [USE_FONT_BACKEND]: Set it->face_id from
14161 the font in gstring.
14162 (fill_composite_glyph_string) [USE_FONT_BACKEND]: Check
14163 LGLYPH_FORM (g) to detect the end of valid glyph.
14164 (x_produce_glyphs) [USE_FONT_BACKEND]: Don't update it->face_id if
14165 we are composing with gstring.
14166
14167 * xterm.c (x_draw_composite_glyph_string_foreground) [USE_FONT_BACKEND]:
14168 Check if adjustment is vector or not.
14169
14170 * Makefile.in (font.o): Make it depends on window.h.
14171
141722008-02-01 Kenichi Handa <handa@m17n.org>
14173
14174 * xterm.c (x_draw_composite_glyph_string_foreground): Check if
14175 adjustment is vector or not.
14176
141772008-02-01 Miles Bader <miles@gnu.org>
14178
14179 * character.h (CHECK_CHARACTER): Redefine in terms of CHECK_TYPE.
14180
141812008-02-01 Kenichi Handa <handa@m17n.org>
14182
14183 * font.h (LGLYPH_XOFF, LGLYPH_YOFF, LGLYPH_WIDTH, LGLYPH_WADJUST)
14184 (LGLYPH_SET_WIDTH): Adjusted for the change of LGLYPH format.
14185 (LGLYPH_ADJUSTMENT, LGLYPH_SET_ADJUSTMENT): New macros.
14186
14187 * font.c (font_merge_old_spec): Treat '*' in foundry as a wild card.
14188 (DEVICE_DELTA): Fix typo.
14189 (font_otf_gpos, font_prepare_compositio): Adjust for the change of
14190 LGLYPH format.
14191
14192 * xterm.c (x_draw_composite_glyph_string_foreground): Adjust for
14193 the change of LGLYPH format.
14194
141952008-02-01 Kenichi Handa <handa@m17n.org>
14196
14197 * ftfont.c (ftfont_list): Fix typo.
14198 (ftfont_build_basic_charsets): Don't include letters with diacritics.
14199
142002008-02-01 Jan Djärv <jan.h.d@swipnet.se>
14201
14202 * xfaces.c (realize_non_ascii_face): Set face->extra to NULL.
14203
14204 * xftfont.c (xftfont_done_face): Call XftDrawDestroy only if
14205 xftface_info is non-NULL.
14206
142072008-02-01 Jan Djärv <jan.h.d@swipnet.se>
14208
14209 * ftfont.c (ftfont_list): Move misplaced #endif.
14210
142112008-02-01 Kenichi Handa <handa@m17n.org>
14212
14213 * ftfont.c (ftfont_list): Pay attention to the case that
14214 FC_CAPABILITY is not defined.
14215
142162008-02-01 Kenichi Handa <handa@m17n.org>
14217
14218 * xftfont.c (xftfont_open): Set charset related members to -1.
14219
14220 * ftfont.c (ftfont_list): Handle QCotf property. Fix handling of
14221 QCname.
14222 (ftfont_open): Set charset related members to -1.
14223
14224 * fontset.c (Votf_script_alist): New variable.
14225 (syms_of_fontset): Initialize it.
14226 (fontset_font): Delete unused variable.
14227
14228 * fontset.h (Votf_script_alist): Extern it.
14229
14230 * font.c (font_find_for_lface): Optimize code.
14231
14232 * font.h (font_close_object, font_merge_old_spec): Extern them.
14233
142342008-02-01 Kenichi Handa <handa@m17n.org>
14235
14236 * font.c (QCscalable, Qc, Qm, Qp, Qd): New variables.
14237 (syms_of_font): Initialize them.
14238 (font_pixel_size): Allow float value in dpi.
14239 (font_prop_validate_type): Delete.
14240 (font_prop_validate_symbol, font_prop_validate_style): Change argument.
14241 Change caller.
14242 (font_prop_validate_non_neg): Rename from font_prop_validate_size.
14243 (font_prop_validate_extra): Delete.
14244 (font_prop_validate_spacing): New function.
14245 (font_property_table): Add elements for all known properties.
14246 (get_font_prop_index): Rename from check_font_prop_name. New
14247 argument FROM. Change caller.
14248 (font_prop_validate): Validate all known properties.
14249 (font_put_extra): Delete argument force. Change caller.
14250 (font_expand_wildcards): Make it static. Fix the way of shrinking
14251 the possible range.
14252 (font_parse_xlfd): Delete argument merge. Fix handling of RESX,
14253 RESY, SPACING, and AVGWIDTH. Don't validate property values here.
14254 Change caller.
14255 (font_unparse_xlfd): Handle dpi, spacing, and scalable properties.
14256 (font_parse_fcname): Delete argument merge. Fix parsing of point
14257 size. Don't validate properties values here. Change caller.
14258 (font_unparse_fcname): Handle dpi, spacing, and scalable properties.
14259 (font_open_by_name): Delete unused variable.
14260 (Ffont_spec): Likewise. Validate property values.
14261 (Ffont_match_p): New function.
14262
14263 * font.h (QCscalable): Extern it.
14264 (font_parse_xlfd, font_parse_fcname): Adjust prototype.
14265
14266 * ftfont.c (ftfont_list): Handle properties dpi, spacing, and scalable.
14267
14268 * xfont.c (xfont_query_font): Adjust for the change of font_parse_xlfd.
14269 (xfont_list_pattern): New function.
14270 (xfont_list): Use xfont_list_pattern.
14271
142722008-02-01 Kenichi Handa <handa@m17n.org>
14273
14274 * font.h (Flist_fonts): EXFUN it.
14275
142762008-02-01 Jason Rumney <jasonr@gnu.org>
14277
14278 * w32term.c (w32_initialize): Add back smoothing_type and
14279 smoothing_enabled definitions.
14280
142812008-02-01 Kenichi Handa <handa@m17n.org>
14282
14283 * xterm.c (x_draw_glyph_string) [USE_FONT_BACKEND]: Check
14284 s->face->font on determining underline position.
14285
142862008-02-01 Kenichi Handa <handa@m17n.org>
14287
14288 * font.c (font_parse_xlfd): Fix generating of CHARSET_REGISTRY field.
14289 (font_has_char): Accept font-object too.
14290 (font_find_for_lface): Try at first with a size specified in face.
14291
142922008-02-01 Kenichi Handa <handa@m17n.org>
14293
14294 * frame.c (x_set_font) [USE_FONT_BACKEND]: Fix argument to
14295 font_open_by_name.
14296
142972008-02-01 Kenichi Handa <handa@m17n.org>
14298
14299 * font.h (QCspacing, QCdpi): Extern them.
14300 (enum font_spacing): New enum.
14301 (FONT_PIXEL_SIZE_QUANTUM): New macro.
14302
14303 * font.c (POINT_TO_PIXEL): Don't divide POINT by 10.
14304 (QCspacing, QCdpi): New variables.
14305 (syms_of_font): Initialize them.
14306 (font_pixel_size): New function.
14307 (font_put_extra): New function.
14308 (font_parse_xlfd): Fix handling of font size. Add QCdpi property
14309 in FONT_EXTRA.
14310 (font_parse_fcname): Handle enumerated values (e.g. bold).
14311 Fix handling font size. Add QCname property that contains only
14312 unknown properties.
14313 (font_score): Change argument. Change caller. Pay attention to
14314 FONT_PIXEL_SIZE_QUANTUM.
14315 (font_sort_entites, font_list_entities, font_find_for_lface)
14316 (font_open_for_lface, font_open_by_name): Fix handling of font size.
14317 (Ffont_spec): Add QCname property that contains only unknown properties.
14318
14319 * ftfont.c (ftfont_list): Use assq_no_quit, not Fassq. Don't
14320 include weight in listing pattern, instead check weight of each
14321 listed font. Don't include scalable in pattern. Pay attention to
14322 FONT_PIXEL_SIZE_QUANTUM.
14323
143242008-02-01 Kenichi Handa <handa@m17n.org>
14325
14326 * font.c (font_parse_fcname): Fix parsing of point-size.
14327 (font_unparse_fcname): Produce symbolic names for style properties.
14328 (font_list_entities): Handle float size correctly.
14329 (font_open_by_name): Prefer `normal' property values if the name
14330 doesn't specify them.
14331
14332 * fontset.c (Finternal_char_font): Use font_get_name, not
14333 Ffont_xlfd_name.
14334
14335 * ftfont.c (ftfont_pattern_entity): Use the numeric value 100 for
14336 FC_WEIGHT_REGULAR. Exclude FC_SIZE and FC_PIXEL_SIZE from listing
14337 pattern. Don't force scalable.
14338
14339 * xftfont.c (xftfont_open): For generating a name, start from
14340 96-byte buffer.
14341
143422008-02-01 Jan Djärv <jan.h.d@swipnet.se>
14343
14344 * frame.h (x_new_fontset2): Fix prototype.
14345
143462008-02-01 Kenichi Handa <handa@m17n.org>
14347
14348 * font.h (struct font_driver): Delete member parse_name.
14349 (font_match_p, font_get_spec, font_parse_fcname)
14350 (font_unparse_fcname): Extern them.
14351 (font_get_name): Adjust prototype.
14352
14353 * font.c (XLFD_SMALLNUM_MASK): Delete this macro.
14354 (XLFD_LARGENUM_MASK): Delete XLFD_ENCODING_MASK from it.
14355 (font_expand_wildcards): Fix handling ENCODING field. Avoid
14356 unnecessary checks for weight, slant, and swidth.
14357 (font_parse_fcname): New function.
14358 (font_unparse_fcname): New function.
14359 (font_parse_name): New function.
14360 (font_match_p): New function.
14361 (font_get_name): Change return value to Lisp string.
14362 (font_get_spec): New function.
14363 (Qunspecified, Qignore_defface): Don't extern them.
14364 (font_find_for_lface): Assume that LFACE is fully specified.
14365 (font_load_for_face): If lface[LFACE_FONT_INDEX] is an font
14366 object, use it for FACE.
14367 (font_open_by_name): Call Ffont_spec with QCname prop. Don't call
14368 driver->parse_name.
14369 (Ffont_spec): Call font_parse_name, not font_parse_xlfd.
14370
14371 * fontset.h (new_fontset_from_font) [USE_FONT_BACKEND]: Adjust
14372 prototype.
14373
14374 * fontset.c (new_fontset_from_font) [USE_FONT_BACKEND]: Delete
14375 argument F. Don't call Fnew_fontset. Instead, directly call
14376 make_fontset.
14377
14378 * frame.h (x_new_fontset2) [USE_FONT_BACKEND]: Adjust prototype.
14379
14380 * frame.c (x_set_font) [USE_FONT_BACKEND]: Adjust for the change
14381 of x_new_fontset2.
14382
14383 * ftfont.c (Qmonospace, Qsans_serif, Qserif, Qmono, Qsans)
14384 (Qsans__serif): New variables.
14385 (ftfont_generic_family_list): New variable.
14386 (syms_of_ftfont): Initialize the above variables.
14387 (ftfont_pattern_entity): Delete argument NAME.
14388 (ftfont_list_generic_family): New function.
14389 (ftfont_parse_name): Delete this function.
14390 (ftfont_list): Try generic family only when FcFontList found no font.
14391 (ftfont_list_family): Fix args to FcObjectSetBuild.
14392
14393 * xfaces.c (check_lface_attrs) [USE_FONT_BACKEND]: Accept font
14394 object in attrs[LFACE_FONT_INDEX].
14395 (set_lface_from_font_name): Cancel all changes for font-backend.
14396 (set_lface_from_font_and_fontset) [USE_FONT_BACKEND]: New
14397 function.
14398 (Finternal_set_lisp_face_attribute) [USE_FONT_BACKEND]: Accept a
14399 font object in QCfont attribute.
14400 (set_font_frame_param) [USE_FONT_BACKEND]: Likewise.
14401 (realize_default_face) [USE_FONT_BACKEND]: Call
14402 set_lface_from_font_and_fontset.
14403
14404 * xfns.c (x_default_font_parameter) [USE_FONT_BACKEND]: Try also
14405 "fixed", and signal error here if no suitable font was found.
14406
14407 * xfont.c (xfont_parse_name): Delete this function.
14408
14409 * xftfont.c (xftfont_open): Change coding style of error
14410 handling. Generate fontconfig's fontname pattern.
14411
14412 * xterm.h (struct x_output) [USE_FONT_BACKEND]: New member fontp.
14413 (FRAME_FONT_OBJECT) [USE_FONT_BACKEND]: New macro.
14414
14415 * xterm.c (x_new_fontset2) [USE_FONT_BACKEND]: Change arguments.
14416 Both args FONTSET and FONT_OBJECT must be existing ones.
14417
144182008-02-01 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
14419
14420 * macterm.c (mac_set_unicode_keystroke_event): Don't use MAKE_CHAR.
14421
144222008-02-01 Kenichi Handa <handa@m17n.org>
14423
14424 * xfont.c (xfont_open, xfont_encode_char): Fix typo.
14425
14426 * font.h (struct font): Fix typo.
14427
14428 * font.c (enum xlfd_field_index): Rename XLFD_XXX_SIZE_INDEX to
14429 XLFD_XXX_INDEX.
14430 (enum xlfd_field_mask): New enum.
14431 (intern_font_field): Changed argument. Change caller. If digits
14432 are followed by non-digits, return a symbol.
14433 (font_expand_wildcards): New function.
14434 (font_parse_xlfd): Fix wildcard handling.
14435 (Ffont_spec): If :name is specified, reflect the info in the other
14436 properties.
14437
14438 * ftfont.c (ftfont_pattern_entity): Fix typo.
14439 (ftfont_list): Enforce FC_LANG in PATTERN to cancel the effect of
14440 locale.
14441
144422008-02-01 Kenichi Handa <handa@m17n.org>
14443
14444 * font.h (Qiso8859_1, Qiso10646_1, Qunicode_bmp): Extern them.
14445
14446 * font.c (Qiso8859_1, Qiso10646_1, Qunicode_bmp): Move from ftfont.c.
14447 (font_unparse_xlfd): Fix argument type declaration. Append "*" if
14448 registry doesn't specify encoding part.
14449 (font_find_for_lface): Pay attention to LFACE_FONT_INDEX.
14450 (font_open_by_name): At first try parsing the name.
14451 (syms_of_font): Declare Qiso8859_1, Qiso10646_1, and Qunicode_bmp
14452 as Lisp symbols.
14453
14454 * fontset.c (reorder_font_vector): Pay attention to the case that
14455 the 3rd element of font_def is nil.
14456 (fontset_font): For the default fontset, append one more fontset
14457 elements for a script-based font specification. Don't add script
14458 attribute on finding a font.
14459 (new_fontset_from_font): Unconditionally set FONTSET_ASCII to the
14460 font name.
14461 (fontset_ascii_font): If a font can't be opened, return nil.
14462
14463 * ftfont.c (Qiso8859_1, Qiso10646_1, Qunicode_bmp): Move to font.c.
14464 (ftfont_pattern_entity): New function.
14465 (ftfont_get_cache): Assume that freetype_font_cache is already
14466 initialized.
14467 (ftfont_list): Handle the case that a file is specified in font
14468 name. Use ftfont_pattern_entity to generate entities.
14469 (ftfont_has_char): Check if the pattern contains FC_CHARSET.
14470 (syms_of_ftfont): Initialize freetype_font_cache.
14471
14472 * xftfont.c (xftfont_open): Make the font name fontconfig's
14473 style. Add BLOCK_INPUT and UNBLOCK_INPUT.
14474 (xftfont_close): Free font->font.name if not NULL.
14475
14476 * xfont.c (xfont_list): If script is specified for a font, return
14477 null_vector.
14478 (xfont_list_family): Declare argument type.
14479
14480 * xfaces.c (set_lface_from_font_name): If a font doesn't have a
14481 name, set LFACE_FONT (lface) to nil.
14482
14483 * xterm.c (x_new_fontset2): If an ASCII font couldn't be loaded,
14484 return Qnil.
14485
144862008-02-01 Kenichi Handa <handa@m17n.org>
14487
14488 * emacs.c (main): Check -enable-font-backend arg after the check of -nl.
14489 (standard_args): Add "-enable-font-backend".
14490
144912008-02-01 Kenichi Handa <handa@m17n.org>
14492
14493 * xftfont.c (xftfont_default_fid): Set fid_known to 1.
14494 (struct xftdraw_list, xftdraw_list): Delete them.
14495 (register_xftdraw, check_xftdraw): Delete them.
14496 (xftfont_prepare_face): Don't call register_xftdraw.
14497 (xftfont_done_face): Don't call check_xftdraw.
14498 (xftfont_draw): Get background color only when with_background is
14499 nonzero.
14500
14501 * xfont.c (xfont_encode_char): Fix calculation of char2b.
14502
145032008-02-01 Kenichi Handa <handa@m17n.org>
14504
14505 These changes are for the new font handling codes.
14506
14507 * Makefile.in (ALL_CFLAGS): Add @FREETYPE_CFLAGS@,
14508 @FONTCONFIG_CFLAGS@, and @LIBOTF_CFLAGS@.
14509 (LIB_X11_LIB): If HAVE_XFT is defined, set to @XFT_LIBS@.
14510 (FONTSRC, FONTOBJ): New variables.
14511 (obj): Add $(FONTOBJ).
14512 (SOME_MACHINE_OBJECTS): Lib_X11_Lib.
14513 (LIBES): Add @FREETYPE_LIBS@, @FONTCONFIG_LIBS@, and
14514 @LIBOTF_LIBS@.
14515 (font.o, ftfont.o, xfont.o, xftfont.o, ftxfont.o): New targets.
14516 (fontset.o, xdisp.o, xfaces.o, xfns.o, xterm.o): Depend on $(FONTSRC).
14517
14518 * font.h, font.c, xfont.c, ftfont.c, xftfont.c, ftxfont.c: New files.
14519
14520 * character.h (Vscript_representative_chars): Extern it.
14521
14522 * character.c (Vscript_representative_chars): New variable.
14523 (syms_of_character): Declare it as a Lisp variable.
14524
14525 * composite.c (get_composition_id) [USE_FONT_BACKEND]: If
14526 enable_font_backend is nonzero, accept the composition method
14527 COMPOSITION_WITH_GLYPH_STRING.
14528
14529 * composite.h (enum composition_method) [USE_FONT_BACKEND]: New
14530 enumeration COMPOSITION_WITH_GLYPH_STRING.
14531
14532 * dispextern.h (struct glyph_string) [USE_FONT_BACKEND]: New
14533 members clip_x, clip_y, clip_width, and clip_height.
14534 (struct face) [USE_FONT_BACKEND]: New members font_info and extra.
14535
14536 * emacs.c (main) [USE_FONT_BACKEND]: Handle arg
14537 --enable-font-backend. Call syms_of_font.
14538
14539 * fns.c (assoc_no_quit): New function.
14540
14541 * fontset.h (FONT_INFO_FROM_FACE): New macro.
14542 (face_for_font, new_fontset_from_font)
14543 (fontset_ascii_font) [USE_FONT_BACKEND]: Extern them.
14544
14545 * fontset.c [USE_FONT_BACKEND]: Include "font.h".
14546 (fontset_font, fontset_ascii, face_for_char)
14547 (make_fontset_for_ascii_face, Ffont_info)
14548 (Finternal_char_font) [USE_FONT_BACKEND]: If enable_font_backend
14549 is nonzero, use font-backend mechanism.
14550 (find_font_encoding): Make it non-static.
14551 (new_fontset_from_font, fontset_ascii_font) [USE_FONT_BACKEND]:
14552 New functions.
14553
14554 * frame.h (struct frame): New members resx and resy.
14555 (struct frame) [USE_FONT_BACKEND]: New member font_driver_list.
14556 (x_new_fontset2) [USE_FONT_BACKEND]: Extern it.
14557
14558 * frame.c [USE_FONT_BACKEND]: Include "font.h".
14559 (make_frame, x_set_font) [USE_FONT_BACKEND]: Use font-backend mechanism.
14560
14561 * lisp.h (assoc_no_quit): Extern it.
14562
14563 * xdisp.c: If USE_FONT_BACKEND is defined, include "font.h".
14564 Through out the file, use FONT_INFO_FROM_FACE instead of
14565 FONT_INFO_FROM_ID, use get_per_char_metric instead of
14566 rif->per_char_metric.
14567 (handle_composition_prop) [USE_FONT_BACKEND]: If the composition
14568 method is COMPOSITION_WITH_GLYPH_STRING, just set it->c to ' '.
14569 (get_glyph_face_and_encoding, fill_composite_glyph_string)
14570 (get_char_face_and_encoding, BUILD_COMPOSITE_GLYPH_STRING)
14571 (x_produce_glyphs) [USE_FONT_BACKEND]: If enable_font_backend is
14572 nonzero, use font-backend mechanism.
14573 (get_per_char_metric): New function.
14574
14575 * xfaces.c [USE_FONT_BACKEND]: Include "font.h".
14576 (set_lface_from_font_name)
14577 (set_font_frame_param, free_realized_face)
14578 (prepare_face_for_display, clear_face_gcs)
14579 (Finternal_set_font_selection_order, realize_x_face)
14580 [USE_FONT_BACKEND]: If enable_font_backend is nonzero, use
14581 font-backend mechanism.
14582 (clear_face_cache) [USE_FONT_BACKEND]: Don't call clear_font_table.
14583 (load_face_font) [USE_FONT_BACKEND]: Abort.
14584 (face_symbolic_value, face_symbolic_weight, face_symbolic_slant)
14585 (face_symbolic_swidth, face_for_font) [USE_FONT_BACKEND]: New functions.
14586
14587 * xfns.c [USE_FONT_BACKEND]: Include "font.h".
14588 (x_default_font_parameter) [USE_FONT_BACKEND]: New function.
14589 (Fx_create_frame) [USE_FONT_BACKEND]: If enable_font_backend is
14590 nonzero, register all available font drivers. Call
14591 x_default_font_parameter for deciding a font.
14592 (x_create_tip_frame) [USE_FONT_BACKEND]: Likewise.
14593
14594 * xterm.c [USE_FONT_BACKEND]: Include "font.h".
14595 (x_set_mouse_face_gc, x_set_glyph_string_clipping)
14596 (x_set_glyph_string_clipping_exactly)
14597 (x_compute_glyph_string_overhangs)
14598 (x_draw_glyph_string_foreground)
14599 (x_draw_composite_glyph_string_foreground, x_draw_glyph_string)
14600 (x_free_frame_resources) [USE_FONT_BACKEND]: If
14601 enable_font_backend is nonzero, use font-backend mechanism.
14602 (x_new_fontset2) [USE_FONT_BACKEND]: New function.
14603
146042008-02-01 Kenichi Handa <handa@m17n.org>
14605
14606 * coding.c (coding_inherit_eol_type): If PARENT is nil, inherit from
14607 system_eol_type.
14608 (syms_of_coding): Initialize system_eol_type.
14609
14610 * process.c (Fset_process_coding_system): Inherit system's eol
14611 format if necessary.
14612
146132008-02-01 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
14614
14615 * macgui.h (USE_ATSUI): Don't enable on emacs-unicode-2 branch.
14616
146172008-02-01 Kenichi Handa <handa@m17n.org>
14618
14619 * coding.c (decode_eol): Pay attention to buffer relocation in
14620 del_range_2.
14621 (decode_coding): Call decode_eol before restoring undo_list.
14622
146232008-02-01 Kenichi Handa <handa@m17n.org>
14624
14625 * charset.c (Fdefine_charset_internal): Fix setting of
14626 emacs_mule_bytes.
14627
146282008-02-01 Kenichi Handa <handa@m17n.org>
14629
14630 * keyboard.c (read_char): Check if C is a character or not before
14631 looking up Vkeyboard_translate_table.
14632
146332008-02-01 Kenichi Handa <handa@m17n.org>
14634
14635 * coding.c (DECODE_EMACS_MULE_20_RELATIVE_COMPOSITION): Fix
14636 condition to terminate the loop.
14637
146382008-02-01 Kenichi Handa <handa@m17n.org>
14639
14640 * coding.c (produce_composition): Compare charbuf[i] instead of
14641 args[i] against 0.
14642 (Fterminal_coding_system): Use EQ to compare Lisp objects.
14643
146442008-02-01 Kenichi Handa <handa@m17n.org>
14645
14646 * coding.c (DECODE_COMPOSITION_START): If the source is short, set
14647 coding->result to CODING_RESULT_INSUFFICIENT_SRC.
14648 (decode_coding_gap): Set CODING_MODE_LAST_BLOCK after the call of
14649 detect_coding.
14650 (emacs_mule_char): Handle old style (Emacs 20) component character
14651 of a composition.
14652 (DECODE_EMACS_MULE_COMPOSITION_RULE_20)
14653 (DECODE_EMACS_MULE_20_RULEBASE_COMPOSITION): Fix parsing a
14654 composition rule.
14655 (decode_coding_emacs_mule): Handle invalid bytes correctly.
14656
146572008-02-01 Kenichi Handa <handa@m17n.org>
14658
14659 * coding.c (encode_coding_ccl): Allocate destination dynamically
14660 when necessary.
14661
146622008-02-01 Kenichi Handa <handa@m17n.org>
14663
14664 * ccl.c (Fccl_execute_on_string): Fix the condition of terminating
14665 the loop. When quitted, show a proper error message.
14666
146672008-02-01 Kenichi Handa <handa@m17n.org>
14668
14669 * xterm.c (x_set_glyph_string_clipping_exactly): Set
14670 src->clip_head and src->clip_tail temporarily instead of src->hl.
14671
14672 * ccl.c (CCL_WRITE_STRING): Handle a flag bit for multibyte
14673 character sequence.
14674 (Fccl_execute_on_string): Use ASET, not XSET.
14675
146762008-02-01 Kenichi Handa <handa@m17n.org>
14677
14678 * search.c (search_buffer): Fix handling of "\\" in a trivial regexp.
14679
146802008-02-01 Kenichi Handa <handa@m17n.org>
14681
14682 * coding.c (decode_coding): Fix the condition of terminating the
14683 decoding loop.
14684
146852008-02-01 Kenichi Handa <handa@m17n.org>
14686
14687 * data.c (Faset): On setting a character bigger than 255 in a
14688 unibyte string, signal an error instead of make the string multibyte.
14689
146902008-02-01 Kenichi Handa <handa@m17n.org>
14691
14692 * charset.c (map_charset_chars): Fix for ascii-compatible charset
14693 made by a mapping table.
14694
146952008-02-01 Kenichi Handa <handa@m17n.org>
14696
14697 * xdisp.c (fill_composite_glyph_string): Check s->face is NULL or
14698 not.
14699 (BUILD_COMPOSITE_GLYPH_STRING): If C is TAB, set s->face to NULL.
14700 (x_produce_glyphs): If CH is TAB, set cmp->offsets properly.
14701
14702 * xterm.c (x_draw_composite_glyph_string_foreground): Check
14703 s->face is NULL or not.
14704
147052008-02-01 Kenichi Handa <handa@m17n.org>
14706
14707 * xterm.c (x_set_glyph_string_clipping_exactly): New function.
14708 (x_draw_glyph_string): Fix drawing of right_overhang and
14709 left_overhang around/on cursor.
14710
14711 * xdisp.c (draw_glyphs): Fix inclusion of right_overwriting glyphs.
14712
147132008-02-01 Kenichi Handa <handa@m17n.org>
14714
14715 * xdisp.c (x_produce_glyphs): Handle composition with TAB.
14716
147172008-02-01 Kenichi Handa <handa@m17n.org>
14718
14719 * coding.c (Fdefine_coding_system_internal)
14720 (Fdefine_coding_system_alias): Avoid a duplicated element in
14721 Vcoding_system_alist.
14722
147232008-02-01 Kenichi Handa <handa@m17n.org>
14724
14725 * xterm.c (handle_one_xevent): Handle keysyms 0x1000000..0x10000FF.
14726
14727 * coding.c (Qcoding_system_define_form): New variable.
14728 (syms_of_coding): Intern and staticpro it.
14729 (Fcoding_system_p): Check Qcoding_system_define_form.
14730 (Fcheck_coding_system): Try to autoload the definition of CODING-SYSTEM.
14731
14732 * coding.h (CODING_SYSTEM_P): If ID is not available, call
14733 Fcoding_system_p.
14734 (CHECK_CODING_SYSTEM): If ID is not available, call
14735 Fcheck_coding_system.
14736 (CHECK_CODING_SYSTEM_GET_SPEC, CHECK_CODING_SYSTEM_GET_ID):
14737 Try also Fcheck_coding_system.
14738
147392008-02-01 Kenichi Handa <handa@m17n.org>
14740
14741 * coding.c (code_conversion_restore): GCPRO arg.
14742
147432008-02-01 Kenichi Handa <handa@m17n.org>
14744
14745 * character.c (lisp_string_width): Check multibyteness of STRING.
14746
147472008-02-01 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
14748
14749 * macterm.c (mac_encode_char): Call ccl_driver with the last arg
14750 Qnil. Use JIS_TO_SJIS instead of ENCODE_SJIS.
14751 (decode_mac_font_name): Use decode_coding_c_string instead of
14752 decode_coding.
14753 (x_load_font): Initialize fontp->fontset to -1. Set
14754 fontp->encoding_type.
14755
147562008-02-01 Kenichi Handa <handa@m17n.org>
14757
14758 * search.c (search_buffer): Give up BM search on case-fold-search
14759 if one of a target character has a case-equivalence of different
14760 byte length even if that target charcter is an ASCII.
14761 (simple_search): Fix calculation of byte length of matched text.
14762 (boyer_moore): Fix handling of case-equivalent multibyte characters.
14763
147642008-02-01 Kenichi Handa <handa@m17n.org>
14765
14766 * coding.c (decode_coding): Fix handling of invalid bytes.
14767
147682008-02-01 Kenichi Handa <handa@m17n.org>
14769
14770 * xterm.c (handle_one_xevent): Handle keysyms directly mapped to
14771 Unicode characters.
14772
147732008-02-01 Kenichi Handa <handa@m17n.org>
14774
14775 * coding.c (encode_coding_object): If a pre-write-conversion
14776 function makes a new buffer, kill it.
14777
147782008-02-01 Kenichi Handa <handa@m17n.org>
14779
14780 * coding.c (QCascii_compatible_p): New variable.
14781 (syms_of_coding): Initialize it.
14782 (ONE_MORE_BYTE, ONE_MORE_BYTE_NO_CHECK): Decrement `src' before
14783 calling string_char.
14784 (record_conversion_result): Add `default:' case.
14785 (coding_charset_list): Delete unused variable `coding_type'.
14786 (Fdefine_coding_system_internal): Add `ascii-compatible-p'
14787 property in the plist of the coding system.
14788 (Fcoding_system_put): Check QCascii_compatible_p.
14789
147902008-02-01 Miles Bader <miles@gnu.org>
14791
14792 * xfaces.c (Finternal_lisp_face_equal_p): Restore previously
14793 removed calculation of frame `f', as it's now used.
14794
147952008-02-01 Kenichi Handa <handa@m17n.org>
14796
14797 * Makefile.in (RUN_TEMACS): Include "-nl" if HAVE_SHM is defined.
14798 (emacs${EXEEXT}): Run $(RUN_TEMACS) unconditionally.
14799 (UNIDATA): New variable.
14800 (${lispsource}international/charprop.el): Depends on ${UNIDATA}.
14801 (bootstrap-emacs${EXEEXT}): Depends on charprop.el. Run
14802 $(RUN_TEMACS) unconditionally.
14803
148042008-02-01 Kenichi Handa <handa@m17n.org>
14805
14806 * Makefile.in (temacs${EXEEXT}): Build charprop.el if necessary.
14807 (admindir): New variable.
14808 ($(lispsource)international/charprop.el): New target.
14809
148102008-02-01 Miles Bader <miles@gnu.org>
14811
14812 * character.c (chars-in-region): Remove obsolete function.
14813 (syms_of_character): Remove its initialization.
14814
148152008-02-01 Benjamin Riefenstahl <b.riefenstahl@turtle-trading.net>
14816
14817 * w32select.c (validate_coding_system)
14818 (setup_windows_coding_system): New functions.
14819 (convert_to_handle_as_coded, Fw32_get_clipboard_data): Use
14820 setup_windows_coding_system.
14821 (setup_config, Fw32_get_clipboard_data): Use
14822 validate_coding_system.
14823 (Fx_selection_exists): Move call to setup_config to a place
14824 where signals are allowed.
14825
14826 * lisp.h (Fcoding_system_base, Fcoding_system_eol_type)
14827 (Fcheck_coding_system): Add declarations.
14828
148292008-02-01 Kenichi Handa <handa@m17n.org>
14830
14831 * charset.c (load_charset_map_from_vector): Fix for the first iteration.
14832
148332008-02-01 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
14834
14835 * macfns.c (Fx_create_frame, x_create_tip_frame): Pass Lisp
14836 string as the second argument for x_new_fontset.
14837
148382008-02-01 Kenichi Handa <handa@m17n.org>
14839
14840 * coding.c (decode_coding_object): Use safe_call1 instead of call1.
14841 (encode_coding_object): Use safe_call instead of call2.
14842
148432008-02-01 Kenichi Handa <handa@m17n.org>
14844
14845 * fontset.c (Fset_fontset_font): Check family element of a given vector.
14846
14847 * Makefile.in (lisp): Include charprop.el.
14848
148492008-02-01 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
14850
14851 * macfns.c (Fx_create_frame, x_create_tip_frame): Fix crash.
14852 Not sure if it's unnecessary.
14853
148542008-02-01 Steven Tamm <steventamm@mac.com>
14855
14856 * macfns.c (Fx_create_frame, x_create_tip_frame): ifdef'd out
14857 some possibly unnecessary fontset checking code that crashed
14858 when creating a new frame.
14859
148602008-02-01 Kenichi Handa <handa@m17n.org>
14861
14862 * xfaces.c (merge_faces): Fix argument to lookup_derived_face and
14863 lookup_face.
14864
14865 * xdisp.c (Fformat_mode_line): Fix argument to lookup_named_face.
14866
14867 * fringe.c (draw_fringe_bitmap_1): Fix argument to lookup_named_face.
14868
148692008-02-01 Kenichi Handa <handa@m17n.org>
14870
14871 * coding.c: Cancel the change done in HEAD on 2008-02-01.
14872 (coding_charset_list): New function.
14873
14874 * coding.h (coding_charset_list): Extern it.
14875
148762008-02-01 Kenichi Handa <handa@m17n.org>
14877
14878 * fontset.c (Fset_fontset_font): Call find_font_encoding with
14879 concatenation of family and registry.
14880
148812008-02-01 Kenichi Handa <handa@m17n.org>
14882
14883 * character.h (BYTE8_STRING): Fix typo.
14884
14885 * editfns.c (Ftranslate_region_internal): Don't convert unibyte
14886 string to multibyte (sync to HEAD).
14887
14888 * casefiddle.c (casify_region): Handle changes in byte-length
14889 using replace_range_2 (sync to HEAD).
14890
148912008-02-01 Andreas Schwab <schwab@suse.de>
14892
14893 * chartab.c (map_char_table): GCPRO table and arg.
14894
148952008-02-01 Kenichi Handa <handa@m17n.org>
14896
14897 * syntax.c (skip_syntaxes): Return lispy 0 (not nil) if point is
14898 already at limit.
14899
149002008-02-01 Kenichi Handa <handa@m17n.org>
14901
14902 * fontset.c (fs_load_font): Use fast_string_match_ignore_case
14903 instead of fast_c_string_match_ignore_case.
14904 (find_font_encoding): Change argument to Lisp_Object. Use
14905 fast_string_match_ignore_case instead of
14906 fast_c_string_match_ignore_case. Change caller.
14907
149082008-02-01 Kenichi Handa <handa@m17n.org>
14909
14910 * xdisp.c (get_next_display_element): In unibyte case, decide to
14911 display in octal form by checking a character by
14912 UNIBYTE_CHAR_HAS_MULTIBYTE_P.
14913
14914 * charset.c (Fset_unibyte_charset): Setup unibyte_has_multibyte_table.
14915
14916 * character.c (unibyte_has_multibyte_table): New variable.
14917
14918 * character.h (unibyte_has_multibyte_table): Extern it.
14919 (UNIBYTE_CHAR_HAS_MULTIBYTE_P): New macro.
14920
149212008-02-01 Kenichi Handa <handa@m17n.org>
14922
14923 * coding.c (encode_coding_iso_2022): Fix handling of charset
14924 annotation.
14925
149262008-02-01 Kenichi Handa <handa@m17n.org>
14927
14928 * coding.c (setup_coding_system): If coding_system is nil, use
14929 Qundecided.
14930 (Fterminal_coding_system): Return nil if terminal coding system is
14931 `undecided'.
14932 (syms_of_coding): Define coding-system `undecided' here. Setup
14933 terminal_coding as `undecided'.
14934
149352008-02-01 Kenichi Handa <handa@m17n.org>
14936
14937 * xdisp.c (message_dolog, set_message_1): Call
14938 unibyte_char_to_multibyte with arg type int.
14939
14940 * lread.c (read1): Fix reading of a char-table.
14941
14942 * print.c (print_object): Include sub char-table in circularities
14943 detection.
14944
149452008-02-01 Kenichi Handa <handa@m17n.org>
14946
14947 * keymap.c (where_is_internal_2): Fix for the case that KEY is a cons.
14948 Append the found sequences in car of ARGS instead of prepending.
14949
149502008-02-01 Kenichi Handa <handa@m17n.org>
14951
14952 * fileio.c (report_file_error): Make a unibyte string from
14953 strerror (errorno).
14954 (Fsubstitute_in_file_name): Fix the arg to
14955 unibyte_char_to_multibyte. It is evaluated twice.
14956
149572008-02-01 Kenichi Handa <handa@m17n.org>
14958
14959 * charset.h (CHAR_CHARSET): Shortcut for ASCII case.
14960
149612008-02-01 Kenichi Handa <handa@m17n.org>
14962
14963 * coding.c (detect_coding_utf_16): Don't set detect_info->found if
14964 BOM is not found.
14965 (detect_coding, detect_coding_system): Optimization for ISO-2022
14966 when no 8-bit data is found.
14967
149682008-02-01 Jason Rumney <jasonr@gnu.org>
14969
14970 * w32fns.c (x_to_w32_font): Update to use new coding struct.
14971
149722008-02-01 Kenichi Handa <handa@m17n.org>
14973
14974 * charset.c (Fdeclare_equiv_charset, Fiso_charset): Fix handing of
14975 CHARS.
14976
149772008-02-01 Steven Tamm <steventamm@mac.com>
14978
14979 * macterm.c (mac_encode_char): Add charset argument and update
14980 to use encoding_type.
14981 (x_new_font, x_new_fontset): Merge in changes from xterm.c;
14982 switch to pure fontset.
14983 (decode_mac_font_name): Temporarily remove decoding.
14984 (x_font_name_to_mac_font_name): Temporarily remove encoding.
14985 (x_load_font): Temporarily remove encoding.
14986
149872008-02-01 Kenichi Handa <handa@m17n.org>
14988
14989 * xfaces.c (Fface_font): If frame is not on a window system,
14990 ignore CHARACTER arg. If HAVE_WINDOW_SYSTEM is not defined, don't
14991 refer to face->font.
14992 (split_font_name_into_vector, build_font_name_from_vector)
14993 (lookup_non_ascii_face, realize_non_ascii_face): Define them only
14994 when HAVE_WINDOW_SYSTEM is defined.
14995
149962008-02-01 Kenichi Handa <handa@m17n.org>
14997
14998 * xdisp.c (BUILD_GLYPH_STRINGS): Check if s is NULL.
14999 (x_produce_glyphs): Fix setting of members of cmp in case
15000 cmp->glyph_len is zero.
15001
15002 * fontset.c (Fset_fontset_font): Fix docstring.
15003 (Ffontset_info): Make it backward compatible. New arg ALL.
15004
150052008-02-01 Kim F. Storm <storm@cua.dk>
15006
15007 * process.c (read_process_output): Grow decoding_buf when needed;
15008 this could cause a crash in allocate_string and compact_small_strings.
15009
150102008-02-01 Kenichi Handa <handa@m17n.org>
15011
15012 * fileio.c (WRITE_BUF_SIZE): Delete this macro.
15013
150142008-02-01 Kenichi Handa <handa@m17n.org>
15015
15016 * coding.c (setup_coding_system): Set coding->common_flags
15017 correctly for raw-text.
15018 (consume_chars): On encoding unibyte text by raw-text, don't check
15019 multibyte form.
15020 (encode_coding): On encoding by raw-text, never use translation tables.
15021
15022 * fileio.c (e_write): Short cut for the case of no encoding.
15023
150242008-02-01 Kenichi Handa <handa@m17n.org>
15025
15026 * coding.c (detect_coding, detect_coding_system): Delete unused
15027 variables.
15028
150292008-02-01 Kenichi Handa <handa@m17n.org>
15030
15031 * coding.c (encode_coding_utf_8): Fix handling of raw-byte char.
15032 (consume_chars): Fix handling of 8-bit bytes in unibyte source.
15033
150342008-02-01 Kenichi Handa <handa@m17n.org>
15035
15036 * coding.c (Ffind_coding_systems_region_internal): Include
15037 raw-text and no-conversion in the result.
15038
150392008-02-01 Kenichi Handa <handa@m17n.org>
15040
15041 * fontset.c (find_font_encoding): Return `ascii' for unknown encoding.
15042 (load_font_get_repertory): Delete unnecessary check of ENCODING of
15043 FONT_DEF.
15044 (font_def_arg, add_arg, from_arg, to_arg): New args.
15045 (set_fontset_font): Change argument.
15046 (Fset_fontset_font): Fix for the case that TARGET is a script
15047 name and charset name.
15048 (new_fontset_from_font_name): Fix argument to Fnew_fontset.
15049
150502008-02-01 Kenichi Handa <handa@m17n.org>
15051
15052 * fontset.c (fontset_font): Rename from fontset_face. Change return
15053 value.
15054 (face_suitable_for_char_p, face_for_char): Adjust for the change
15055 of fontset_font.
15056 (make_fontset_for_ascii_face): Fix setting of the fontset element
15057 for ASCII.
15058 (Finternal_char_font): Use fontset_font instead of FACE_FOR_CHAR
15059 to get a font name.
15060 (Ffontset_info): Adjust for the change of fontset_font.
15061
15062 * coding.c (emacs_mule_char): Check invalid code more rigidly.
15063
15064 * character.h (LEADING_CODE_LATIN_1_MIN)
15065 (LEADING_CODE_LATIN_1_MAX): Delete these macros.
15066
150672008-02-01 Kenichi Handa <handa@m17n.org>
15068
15069 * editfns.c (check_translation): New function.
15070 (Ftranslate_region_internal): Handle M:N mapping.
15071
150722008-02-01 Kenichi Handa <handa@m17n.org>
15073
15074 * xfaces.c (xlfd_point_size): Set font->numeric[XLFD_PIXEL_SIZE].
15075
150762008-02-01 Kenichi Handa <handa@m17n.org>
15077
15078 * coding.c (DECODE_DESIGNATION): Set chars_96 to -1 instead of
15079 goto invalid_code.
15080 (decode_coding_iso_2022): Fix handling of invalid designation.
15081
15082 * fileio.c (Finsert_file_contents): Be sure to call unbind_to
15083 after calling code_conversion_save.
15084
150852008-02-01 Kenichi Handa <handa@m17n.org>
15086
15087 * xdisp.c (handle_auto_composed_prop): Fix Lisp_Object/int mixup.
15088
15089 * print.c (print_prune_string_charset): Fix Lisp_Object/int mixup.
15090
15091 * fontset.c: Include "intervals.h".
15092 (fontset_face): Fix comparing of Lisp_Objects.
15093 (free_face_fontset, new_fontset_from_font_name): Fix
15094 Lisp_Object/int mixup.
15095
15096 * editfns.c (Ftranslate_region_internal): Fix Lisp_Object/int mixup.
15097
15098 * coding.c: Add many prototypes for static functions.
15099 (get_translation_table): Allow max_lookup to be NULL.
15100 (decode_coding, Ffind_coding_systems_region_internal)
15101 (Funencodable_char_position, Fcheck_coding_systems_region): Call
15102 get_translation_table with max_lookup NULL.
15103
151042008-02-01 Kenichi Handa <handa@m17n.org>
15105
15106 * coding.c (get_translation_table): Declare it as Lisp_Object.
15107 (LOOKUP_TRANSLATION_TABLE): New macro.
15108 (produce_chars, consume_chars): Use LOOKUP_TRANSLATION_TABLE
15109 instead of CHAR_TABLE_REF.
15110
151112008-02-01 Kenichi Handa <handa@m17n.org>
15112
15113 * coding.c (MAX_ANNOTATION_LENGTH): Adjust for the change of
15114 annotation data format.
15115 (ADD_ANNOTATION_DATA, ADD_COMPOSITION_DATA, ADD_CHARSET_DATA):
15116 Change arguments FROM and TO to single argument NCHARS. Change caller.
15117 (decode_coding_utf_8, decode_coding_utf_16, decode_coding_emacs_mule)
15118 (decode_coding_iso_2022, decode_coding_sjis, decode_coding_big5)
15119 (decode_coding_ccl, decode_coding_charset): Pay attention to
15120 coding->charbuf_used.
15121 (get_translation): New function.
15122 (produce_chars): New arguments translation_table and last_block.
15123 Translate characters here. Return number of carryover chars.
15124 Change caller.
15125 (produce_composition): New argument pos. Change caller.
15126 Adjust for the change of annotation data format.
15127 (produce_charset, produce_annotation): Likewise.
15128 (decode_coding, encode_coding): Don't call translate_chars.
15129 (consume_chars): New arg translation_table. Change caller.
15130 (translate_chars): Delete.
15131 (syms_of_coding): Make translation-table's number of extra slots 2.
15132
151332008-02-01 Kenichi Handa <handa@m17n.org>
15134
15135 * search.c (simple_search): Fix setting this_pos_byte in backward
15136 search.
15137
15138 * coding.c (detect_coding_emacs_mule): Fix counting of encoded
15139 byte sequence.
15140 (detect_coding_ccl): Fix setting of the variable valids.
15141
151422008-02-01 Kenichi Handa <handa@m17n.org>
15143
15144 * xterm.c (x_list_fonts): Fix the detection of an auto-scaled font.
15145
15146 * coding.c (decode_coding_utf_16): Fix handling of surrogate pair.
15147
15148 * editfns.c (Ftranslate_region_internal): Rename from
15149 Ftranslate_region. Accept a char-table in TABLE.
15150 (syms_of_editfns): Defsubr Stranslate_region_internal.
15151
15152 * xfaces.c (set_lface_from_font_name): If a font is specified for
15153 a frame, generate a fontset from the font.
15154 (build_scalable_font_name): If the scalable font is requested for
15155 a specific size, don't change that size.
15156 (try_font_list): Try a scalable font also in the case that a
15157 pattern string is specified.
15158
151592008-02-01 Kenichi Handa <handa@m17n.org>
15160
15161 * xfaces.c (Fface_font): New optional arg CHARACTER.
15162
151632008-02-01 Kenichi Handa <handa@m17n.org>
15164
15165 * charset.h (CHARSET_OFFSET): New macro.
15166
151672008-02-01 Kenichi Handa <handa@m17n.org>
15168
15169 * xterm.c (x_get_font_repertory): Fix for non-Unicode-bmp charset.
15170
15171 * fontset.c (fontset_face): Handle the case that repertory is a
15172 char-table.
15173 (find_font_encoding): Return nil for unknown encoding.
15174 (Fset_fontset_font): Ignore a font of unknown encoding.
15175
151762008-02-01 Kenichi Handa <handa@m17n.org>
15177
15178 * keymap.c (describe_vector): Handle default value of a char table.
15179
15180 * fontset.c (fontset_face): Handle fallback fonts correctly.
15181 (Ffontset_info): Return infomation about fallback fonts.
15182
151832008-02-01 Kenichi Handa <handa@m17n.org>
15184
15185 * fontset.c (FONTSET_DEFAULT): New macro.
15186 (FONTSET_ADD, fontset_add): Handle the case that range is nil.
15187 (Fset_fontset_font): Change the 2nd arg name to TARGET, and handle
15188 the case that it is nil.
15189 (dump_fontset): Call FONTSET_DEFAULT, not FONTSET_FALLBACK.
15190 (syms_of_fontset): Set char-table-extra-slots property of fontset to 9.
15191
15192 * charset.h (CHAR_CHARSET_P): Fix for the case that the method is
15193 subset or superset.
15194
151952008-02-01 Kenichi Handa <handa@m17n.org>
15196
15197 * emacs.c (main): Call init_charset after syms_of_XXX.
15198
15199 * charset.c (Vcharset_map_directory): Delete.
15200 (Vcharset_map_path): New variable.
15201 (load_charset_map_from_file): Use Vcharset_map_path instead.
15202 (init_charset): Initialize Vcharset_map_path.
15203 (syms_of_charset): Delete declaration of "charset-map-directory",
15204 add declaration of "charset-map-path".
15205
152062008-02-01 Kenichi Handa <handa@m17n.org>
15207
15208 * fns.c (string_char_to_byte, string_byte_to_char): Optimize for
15209 ASCII only string.
15210
15211 * fileio.c (Finsert_file_contents): Avoid detecting a code twice.
15212
15213 * coding.c (detect_coding_iso_2022): Fix handling of SS2 and SS3.
15214 (detect_coding, detect_coding_system): Treat '\0' as normal ASCII byte.
15215
152162008-02-01 Kenichi Handa <handa@m17n.org>
15217
15218 * coding.h (SJIS_TO_JIS2, JIS_TO_SJIS2): New macros.
15219
15220 * coding.c (QCmnemonic, QCdefalut_char)
15221 (QCdecode_translation_table, QCencode_translation_table)
15222 (QCpost_read_conversion, QCpre_write_conversion): New variables.
15223 (get_translation_table): Return a list of translation tables if
15224 necessary.
15225 (decode_coding): Call get_translation_table with ENCODEP 0.
15226 (char_encodable_p): If translation_table is non-nil, always call
15227 translate_char.
15228 (Fdefine_coding_system_internal): Accept list of translation
15229 tables as :encode-translation-table and :decode-translation-table.
15230 (Fcoding_system_put): New function.
15231 (syms_of_coding): Declare new symbols. Defsubr
15232 Scoding_system_put.
15233 (decode_coding_sjis, encode_coding_sjis): Handle 4th charset,
15234 typically JISX0212.
15235
15236 * charset.c (map_charset_chars): Fix arg to map_charset_chars in
15237 when the charset is superset type.
15238
15239 * character.c (translate_char): Accept list of translation tables.
15240
152412008-02-01 Kenichi Handa <handa@m17n.org>
15242
15243 * coding.h (enum coding_attr_index): New member coding_attr_trans_tbl.
15244 (CODING_ATTR_TRANS_TBL): New macro.
15245
15246 * coding.c (get_translation_table): New function.
15247 (translate_chars): Fix the bug of skipping annotation data.
15248 (decode_coding, encode_coding): Utilize get_translation_table.
15249 (char_encodable_p, Funencodable_char_position): Translate char if
15250 necessary.
15251 (Ffind_coding_systems_region_internal)
15252 (Fcheck_coding_systems_region): Setup translation table for encode
15253 in a coding system attribute vector in advance.
15254 (Fdefine_coding_system_internal): Allow a symbol as translation
15255 table. For shift-jis type coding system, allow 4th charset.
15256
152572008-02-01 Kenichi Handa <handa@m17n.org>
15258
15259 * coding.c (decode_coding_sjis): Check the first byte rigidly.
15260
15261 * xdisp.c (get_next_display_element): Pass -1 as POS to
15262 FACE_FOR_CHAR if displaying a C-string.
15263
152642008-02-01 Kenichi Handa <handa@m17n.org>
15265
15266 * composite.c (get_composition_id): Handle xoff and yoff in a
15267 composition rule.
15268
15269 * composite.h (COMPOSITION_DECODE_RULE): New arg xoff and yoff.
15270 (struct composition): New member lbearing and rbearing.
15271
15272 * xdisp.c (move_it_to): Optimize for the case (op & MOVE_TO_Y).
15273 (x_get_glyph_overhangs): Handle a composition glyph.
15274 (x_produce_glyphs): Setup lbearing and rbreaing for a composition glyph.
15275
15276 * xterm.c (x_compute_glyph_string_overhangs): Handle also a
15277 composition glyph.
15278
152792008-02-01 Kenichi Handa <handa@m17n.org>
15280
15281 * print.c: Include charset.h.
15282 (Vprint_charset_text_property): New variable.
15283 (Qdefault): Extern it.
15284 (PRINT_STRING_NON_CHARSET_FOUND)
15285 (PRINT_STRING_UNSAFE_CHARSET_FOUND): New macros.
15286 (print_check_string_result): New variable.
15287 (print_check_string_charset_prop): New function.
15288 (print_prune_charset_plist): New variable.
15289 (print_prune_string_charset): New function.
15290 (print_object): Call print_prune_string_charset if
15291 Vprint_charset_text_property is not t.
15292 (print_interval): Print nothing if interval->plist is nil.
15293 (syms_of_print): Declare Vprint_charset_text_property as a lisp
15294 variable. Init and staticpro print_prune_charset_plist.
15295
152962008-02-01 Kenichi Handa <handa@m17n.org>
15297
15298 * fontset.c (new_fontset_from_font_name): Use the specified font
15299 for all characters in the new fontset.
15300
15301 * macterm.c (x_set_mouse_face_gc): Call FACE_FOR_CHAR with POS and
15302 OBJECT args.
15303
15304 * xdisp.c (x_produce_glyphs): Call FACE_FOR_CHAR with POS and
15305 OBJECT args for composition too.
15306
15307 * w32term.c (x_set_mouse_face_gc): Call FACE_FOR_CHAR with POS and
15308 OBJECT args.
15309
153102008-02-01 Kenichi Handa <handa@m17n.org>
15311
15312 * dispextern.h (FACE_FOR_CHAR): New args POS and OBJECT.
15313
15314 * fontset.c (reorder_font_vector): Adjust for the change of
15315 FONT_DEF format.
15316 (fontset_face): New arg id. Change caller.
15317 (face_for_char): New args pos and object.
15318 (make_fontset_for_ascii_face): Adjust for the change of FONT_DEF format.
15319 (fs_query_fontset): Check NAME by Fassoc too.
15320 (Fset_fontset_font): Allow non-XLFD font name.
15321 (Ffontset_info): Adjust for the change of FONT_DEF format.
15322
15323 * fontset.h (face_for_char): Adjust prototype.
15324
15325 * xdisp.c (face_before_or_after_it_pos, get_next_display_element)
15326 (append_space, extend_face_to_end_of_line)
15327 (get_char_face_and_encoding, BUILD_COMPOSITE_GLYPH_STRING)
15328 (x_produce_glyphs): Call FACE_FOR_CHAR with POS and OBJECT args.
15329
15330 * xfaces.c (compute_char_face): Call FACE_FOR_CHAR with
15331 POS and OBJECT args.
15332
15333 * xterm.c (x_set_mouse_face_gc): Call FACE_FOR_CHAR with
15334 POS and OBJECT args.
15335
153362008-02-01 Jason Rumney <jasonr@gnu.org>
15337
15338 * w32select.c (Fw32_set_clipboard_data): Avoid potential realloc
15339 of GlobalAlloc'ed memory.
15340
153412008-02-01 Kenichi Handa <handa@m17n.org>
15342
15343 * ccl.c (Fccl_execute_on_string): Fix the condition of loop.
15344
15345 * charset.h (charset_table_used): Delete extern.
15346
15347 * charset.c (charset_table_used): Make it static.
15348 (map_charset_chars): Fix args to c_function with.
15349
15350 * chartab.c (map_sub_char_table_for_charset): Fix args to
15351 c_function with.
15352
15353 * coding.h (enum coding_result_code): Delete
15354 CODING_RESULT_INSUFFICIENT_CMP, add CODING_RESULT_INVALID_SRC.
15355
15356 * coding.c (Qinsufficient_source, Qinconsistent_eol)
15357 (Qinvalid_source, Qinterrupted, Qinsufficient_memory): New variables.
15358 (Vlast_code_conversion_error): New variables.
15359 (syms_of_coding): DEFSYM or DEFVAR_LISP them.
15360 (ONE_MORE_BYTE): Record error if any instead of signaling an
15361 error. If non-ASCII multibyte char is found, return the negative
15362 value of the code. All callers changed to check it.
15363 (ONE_MORE_BYTE_NO_CHECK): Likewise.
15364 (record_conversion_result): New function. Change all codes setting
15365 coding->result to call this function.
15366 (detect_coding_utf_8, decode_coding_utf_8)
15367 (detect_coding_emacs_mule, detect_coding_sji, detect_coding_big5):
15368 Don't use the local variable incomplete.
15369 (emacs_mule_char): Change the second arg to `const'.
15370 (decode_coding): Fix of flushing out unprocessed data.
15371 (make_conversion_work_buffer): Fix making of a work buffer.
15372 (decode_coding_object): Return coding->dst_object.
15373
15374 * fontset.c (set_fontset_font): Fix args.
15375
15376 * lisp.h (CHARACTERBITS): Define as 22.
15377
15378 * process.c (send_process): Be sure to set coding->src_multibyte.
15379
15380 * xdisp.c (handle_auto_composed_prop): Fix setting of limit.
15381
153822008-02-01 Kenichi Handa <handa@m17n.org>
15383
15384 * xdisp.c (handle_auto_composed_prop): Give limit to
15385 Fnext_single_char_property_change.
15386
153872008-02-01 Kenichi Handa <handa@m17n.org>
15388
15389 * composite.c (syms_of_composite): Don't make the composition hash
15390 table weak.
15391
15392 * fontset.c (Fset_fontset_font): Fix docstring.
15393
15394 * lisp.h (detect_coding_system): Adjust prototype.
15395
15396 * fileio.c (kill_workbuf_unwind): Delete this function.
15397 (Finsert_file_contents): Adjust the call of detect_coding_system.
15398 Get conversion_buffer by code_conversion_save. Use the macro
15399 CODING_MAY_REQUIRE_DECODING. After decoding, update
15400 coding_system.
15401
15402 * coding.h (make_conversion_work_buffer): Delete extern.
15403 (code_conversion_save): Extern it.
15404
15405 * coding.c (enum iso_code_class_type): Delete ISO_carriage_return.
15406 (CODING_GET_INFO): Delete argument eol_type. Change callers.
15407 (decode_coding_utf_8): Don't do eol converion.
15408 (detect_coding_utf_16): Check coding->src_chars, not
15409 coding->src_bytes. Add heuristics for those that have no signature.
15410 (decode_coding_emacs_mule, decode_coding_iso_2022)
15411 (decode_coding_sjis, decode_coding_big5, decode_coding_charset):
15412 Don't do eol converion.
15413 (adjust_coding_eol_type): Return a new coding system.
15414 (detect_coding): Don't detect eol. Fix for utf-16 detection.
15415 (decode_eol): In case of CRLF->LF conversion, use del_range_2 on
15416 each change.
15417 (decode_coding): Pay attention to undo_list. Do eol conversion for
15418 all types of coding-systems (if necessary).
15419 (Vcode_conversion_work_buf_list): Delete it.
15420 (Vcode_conversion_reused_workbuf): Rename from
15421 Vcode_conversion_reused_work_buf.
15422 (Vcode_conversion_workbuf_name): New variable.
15423 (reused_workbuf_in_use): New variable.
15424 (make_conversion_work_buffer): Delete the arg DEPTH.
15425 (code_conversion_restore): Change argument to cons.
15426 (code_conversion_save): Delete the argument BUFFER. Change callers.
15427 (detect_coding_system): New argument src_chars. Change callers.
15428 Fix for utf-16 detection.
15429 (init_coding_once): Don't use ISO_carriage_return.
15430 (syms_of_coding): Initialize Vcode_conversion_workbuf_name and
15431 reused_workbuf_in_use.
15432
154332008-02-01 Kenichi Handa <handa@m17n.org>
15434
15435 * keymap.c (store_in_keymap): Pay attention to the case that idx
15436 is a cons specifying a character range.
15437
154382008-02-01 Kenichi Handa <handa@m17n.org>
15439
15440 * xdisp.c (handle_auto_composed_prop): Fix the case of returning
15441 HANDLED_RECOMPUTE_PROPS.
15442
15443 * coding.c (Fdefine_coding_system_internal): Fix checking of
15444 ascii compatibility.
15445
154462008-02-01 Kenichi Handa <handa@m17n.org>
15447
15448 * charset.c (find_charsets_in_text): Delete unused locale variable.
15449 (Fset_charset_priority): Update Vemacs_mule_charset_list too.
15450
15451 * coding.c (encode_coding_emacs_mule): Emit bytes with MSB.
15452 Resync charset_list to Vemacs_mule_charset_list.
15453
15454 * keymap.c (store_in_keymap): Pay attention to the case that idx
15455 is a cons specifying a character range.
15456
154572008-02-01 Kenichi Handa <handa@m17n.org>
15458
15459 * composite.c (update_compositions): Bind inhibit-read-only, etc
15460 to t before calling remove-list-of-text-properties.
15461
15462 * print.c (print_object): Always print ASCII chars as is.
15463
154642008-02-01 Kenichi Handa <handa@m17n.org>
15465
15466 * keymap.c (Fdefine_key): Fix handling of Lucid style event type list.
15467
15468 * fns.c (Fmapconcat, Fmapcar, Fmapc): Signal an error if SEQUENCE
15469 is a char table.
15470
154712008-02-01 Kenichi Handa <handa@m17n.org>
15472
15473 * syntax.c (skip_chars): Be sure to alloca char_ranges when necessary.
15474
154752008-02-01 Kenichi Handa <handa@m17n.org>
15476
15477 * xfaces.c (set_lface_from_font_name): Fix for the case that
15478 FONTNAME is not fontset name.
15479
154802008-02-01 Kenichi Handa <handa@m17n.org>
15481
15482 * fns.c (base64_encode_1): Fix previous change.
15483
154842008-02-01 Kenichi Handa <handa@m17n.org>
15485
15486 * fontset.c (set_fontset_font): New function.
15487 (Fset_fontset_font): If a font is specified for a charset, use
15488 map_charset_chars to store the font spec in a fontset.
15489
154902008-02-01 Kenichi Handa <handa@m17n.org>
15491
15492 * fontset.c (fontset_face): Create a fallback fontset on demand.
15493 (make_fontset): Don't create a fallback fontset here.
15494 (free_face_fontset): Free a fallback fontset (if any) too.
15495 (n_auto_fontsets): Delete this variable.
15496 (auto_fontset_alist): New variable.
15497 (new_fontset_from_font_name): Check auto_fontset_alist.
15498 (dump_fontset) [FONTSET_DEBUG]: Fully re-written.
15499 (Ffontset_list_all) [FONTSET_DEBUG]: New function.
15500 (syms_of_fontset): Initialize and staticpro auto_fontset_alist.
15501 Defsubr Sfontset_list_all.
15502
155032008-02-01 Kenichi Handa <handa@m17n.org>
15504
15505 * xterm.c (x_list_fonts): Fix excluding of auto-scaled fonts.
15506
155072008-02-01 Kenichi Handa <handa@m17n.org>
15508
15509 * fontset.c (Fnew_fontset): Check NAME more rigidly.
15510
155112008-02-01 Kenichi Handa <handa@m17n.org>
15512
15513 * editfns.c (Fgoto_char): Fix docstring.
15514
155152008-02-01 Kenichi Handa <handa@m17n.org>
15516
15517 * insdel.c (insert_from_gap): Adjust intervals correctly.
15518
155192008-02-01 Jason Rumney <jasonr@gnu.org>
15520
15521 * w32term.c (GLYPHSET, WCRANGE): Define if system headers don't.
15522 (pfnGetFontUnicodeRanges): New dynamically loaded function.
15523 (w32_initialize): Try to load it.
15524 (x_get_font_repertory): Use it if available.
15525 (w32_encode_char): Add shortcut for unicode output.
15526
15527 * w32fns.c (w32_load_system_font): Default charset to -1.
15528 (x_to_w32_charset): Match all fonts for unicode.
15529 (w32_to_x_charset): New parameter matching. Don't return partial
15530 or wildcard charsets.
15531 (w32_to_all_x_charsets): Don't return partial or wildcard charsets.
15532 (w32_codepage_for_font): Return CP_UNICODE for unicode.
15533 (w32_to_x_font): Match charset to real charset.
15534 (enum_font_cb2): Always list unicode versions.
15535
15536 * makefile.w32-in (temacs): Increase EMHEAP.
15537
155382008-02-01 Jason Rumney <jasonr@gnu.org>
15539
15540 * w32term.c (w32_encode_char): New charset parameter.
15541 font_info.encoding becomes encoding_type.
15542 (x_get_font_repertory): New function. Warning: stub only!
15543 (x_new_font): Return quickly if font already set.
15544 (x_new_fontset): fontsetname parameter is Lisp_Object.
15545 Use new fs_query_fontset. Try new_fontset_from_font_name.
15546 Use fontset_name for return value.
15547
15548 * w32term.h: Declare x_get_font_repertory.
15549
15550 * w32select.c (Fw32_set_clipboard_data): Use string_x_string_p in
15551 place of find_charset_in_text. Use encode_coding_object in place
15552 of encode_coding.
15553 (Fw32_get_clipboard_data): Use decode_coding_c_string in place of
15554 decode_coding.
15555
15556 * w32fns.c (Fx_create_frame, x_create_tip_frame): Use new version
15557 of x_new_fontset.
15558 (w32_load_system_font): Initialize charset as unicode.
15559 font_info.encoding becomes encoding_type.
15560 (w32_to_x_font): Use decode_coding_c_string in place of decode_coding.
15561 (x_to_w32_font): Use encode_coding_object in place of encode_coding.
15562 (syms_of_w32fns): Set get_font_repertory_func.
15563
15564 * w32console.c: Include character.h. Use terminal_encode_buffer
15565 from term.c.
15566 (write_glyphs): Use new version of encode_terminal_code. Use
15567 encode_coding_object in place of encode_coding.
15568
15569 * w32bdf.c (w32_load_bdf_font): Clear font_info before filling.
15570 encoding becomes encoding_type.
15571
15572 * term.c (terminal_encode_buffer): Make externally visible.
15573
15574 * makefile.w32-in: Add character.h dependancies.
15575 (character.o, chartab.o): New targets.
15576
155772008-02-01 Kenichi Handa <handa@m17n.org>
15578
15579 * fileio.c (Finsert_file_contents) [DOS_NT]: Use the macro
15580 CODING_ID_EOL_TYPE.
15581
155822008-02-01 Andreas Schwab <schwab@suse.de>
15583
15584 * coding.c (produce_chars): Revert last change.
15585
155862008-02-01 Kenichi Handa <handa@m17n.org>
15587
15588 * charset.h (charset_unicode): Extern it.
15589
15590 * charset.c (string_xstring_p): Check by (C >= 0x100).
15591 (find_charsets_in_text): Change format of the arc CHARSETS. New
15592 arg MULTIBYTE.
15593 (Ffind_charset_region, Ffind_charset_string): Adjust for the
15594 change of find_charsets_in_text.
15595 (Fsplit_char): Fix doc. Never return unknown.
15596
15597 * chartab.c (char_table_translate): Use CHARACTERP, not INTEGERP.
15598
15599 * coding.c (Fdefine_coding_system_alias): Update
15600 Vcoding_system_list.
15601
15602 * fontset.c (load_font_get_repertory): Pay attention to the case
15603 that ENCODING of a font is specified by a char-table.
15604
15605 * xterm.c (x_get_font_repertory): Handle the case that the
15606 encoding of font is other than Unicode.
15607
156082008-02-01 Kenichi Handa <handa@m17n.org>
15609
15610 * term.c (encode_terminal_code): Don't handle glyph-table. Check
15611 if a character is encodable by the terminal coding system. If
15612 not, produces proper number of `?'s. Update
15613 terminal_encode_buffer and terminal_encode_buf_size if necessary.
15614 (produce_glyphs): Check by CHAR_BYTE8_P, not SINGLE_BYTE_CHAR_P.
15615
156162008-02-01 Kenichi Handa <handa@m17n.org>
15617
15618 * term.c (terminal_encode_buffer, terminal_encode_buf_size): New
15619 variables.
15620 (encode_terminal_code): Change argument. Encode multiple
15621 characters at once. Store the result of encoding in
15622 terminal_encode_buffer.
15623 (write_glyphs, insert_glyphs): Adjust for the change of
15624 encode_terminal_code.
15625 (term_init): Initialize terminal_encode_buffer and
15626 terminal_encode_buf_size.
15627
15628 * coding.c (consume_chars): If coding->src_object is nil, don't
15629 check annotation.
15630
156312008-02-01 Kenichi Handa <handa@m17n.org>
15632
15633 * character.c (char_string): Use ASCII_CHAR_P instead of
15634 SINGLE_BYTE_CHAR_P.
15635
156362008-02-01 Kenichi Handa <handa@m17n.org>
15637
15638 * xdisp.c (handle_auto_composed_prop): Check if the last
15639 characters of auto-composed region is newly composed with the
15640 following characters.
15641 (handle_composition_prop): Fix checking of point being inside
15642 composition.
15643
156442008-02-01 Kenichi Handa <handa@m17n.org>
15645
15646 * fns.c (concat): Don't change multibyteness of the result by
15647 concatenating an 8-bit character.
15648
15649 * data.c (Faset): Check newelt by CHECK_CHARACTER. Don't change
15650 multibyteness of the result when newelt is an 8-bit character.
15651
156522008-02-01 Dave Love <fx@gnu.org>
15653
15654 * xmenu.c (find_and_call_menu_selection): Make menu_bar_items_used
15655 EMACS_INT.
15656
15657 * xfns.c (DefaultDepthOfScreen, x_encode_text): Remove unused vars.
15658
15659 * xfaces.c (face_numeric_value): Declare dim size_t.
15660 (Finternal_lisp_face_equal_p): Remove unused f.
15661
15662 * xdisp.c (BUILD_CHAR_GLYPH_STRINGS, display_and_set_cursor)
15663 (MATRIX_ROW): Remove unused vars.
15664 (draw_glyphs, x_insert_glyphs, fast_find_position)
15665 (fast_find_position, fast_find_string_pos): Use EMACS_INT for
15666 byte/char counts.
15667
15668 * regex.c (regex_compile): Remove unused var.
15669
15670 * minibuf.c (Fminibuffer_complete_word): Remove unused var.
15671
15672 * keymap.c (Fset_keymap_parent, map_keymap, Fcopy_keymap)
15673 (Faccessible_keymaps, where_is_internal): Remove unused vars.
15674
15675 * keyboard.c (cancel_hourglass_unwind): Return Qnil.
15676
15677 * frame.c (frame_name_fnn_p): Make len EMACS_INT.
15678
15679 * fileio.c (Fwrite_region): Remove unused var.
15680
15681 * dispnew.c (adjust_frame_glyphs_for_frame_redisplay)
15682 (adjust_frame_glyphs_for_window_redisplay): Remove unused ch_dim.
15683
15684 * composite.c (Fremove_list_of_text_properties): Declare.
15685
15686 * coding.c (inhibit_pre_post_conversion): Remove (unused).
15687 (alloc_destination, produce_chars): Use EMACS_INT for byte/char counts.
15688 (coding_inherit_eol_type): Remove unused attrs.
15689 (detect_coding): Cast arg of detect_eol.
15690
15691 * charset.c (syms_of_charset): Remove unused var p.
15692 (find_charsets_in_text, Ffind_charset_region): Use EMACS_INT for
15693 byte/char counts.
15694
15695 * casetab.c (set_case_table): Remove unused var.
15696
15697 * window.c (Fdisplay_buffer, Fframe_selected_window): Remove
15698 unused vars.
15699
157002008-02-01 Dave Love <fx@gnu.org>
15701
15702 * xterm.c (x_bitmap_mask): Declare.
15703
157042008-02-01 Dave Love <fx@gnu.org>
15705
15706 * xterm.c (x_term_init): Fix type error.
15707
15708 * lisp.h: Add Funibyte_char_to_multibyte.
15709
15710 * coding.c (Fread_coding_system): Fix arg of XSETSTRING.
15711 (Fset_coding_system_priority): Doc fix.
15712
15713 * ccl.c (ccl_driver): Fix arg of CHARACTERP.
15714
15715 * indent.c (check_composition): Make start and end EMACS_INT.
15716
15717 * character.c (lisp_string_width): Make ignore and end EMACS_INT.
15718
15719 * xdisp.c (handle_composition_prop, check_point_in_composition):
15720 Make buffer positions EMACS_INT.
15721
15722 * composite.c (find_composition, run_composition_function)
15723 (update_compositions, Ffind_composition_internal): Make buffer
15724 positions EMACS_INT.
15725
15726 * composite.h (find_composition, update_compositions): Make
15727 position args EMACS_INT.
15728
15729 * keyboard.c (adjust_point_for_property): Make beg and end EMACS_INT.
15730
15731 * intervals.c (get_property_and_range):
15732 * intervals.h (get_property_and_range): Make start and end EMACS_INT.
15733
15734 * unexalpha.c: Don't include varargs.h.
15735
157362008-02-01 Dave Love <fx@gnu.org>
15737
15738 * coding.h (ENCODE_UTF_8): New.
15739
15740 * Makefile.in (gtkutil.o): Depend on coding.h.
15741
15742 * coding.c (Fset_coding_system_priority): Doc fix.
15743
157442008-02-01 Kenichi Handa <handa@m17n.org>
15745
15746 * fileio.c (Finsert_file_contents): Call setup_coding_system in
15747 the case of auto saving.
15748
157492008-02-01 Andreas Schwab <schwab@suse.de>
15750
15751 * chartab.c (map_char_table, map_char_table_for_charset): Protect
15752 `range' from GC.
15753
157542008-02-01 Kenichi Handa <handa@m17n.org>
15755
15756 * coding.c (decode_coding_sjis): Check bytes more rigidly.
15757
157582008-02-01 Kenichi Handa <handa@m17n.org>
15759
15760 * fileio.c (choose_write_coding_system): Return a decided coding system.
15761 (Fwrite_region): Set Vlast_coding_system_used to the return value
15762 of choose_write_coding_system.
15763
157642008-02-01 Kenichi Handa <handa@m17n.org>
15765
15766 * charset.c (Fset_charset_priority): Pay attention to duplicated
15767 arguments.
15768
15769 * coding.c (QCcategory): New variable.
15770 (syms_of_coding): Defsym it. Set all elements of
15771 Vcoding_category_table and their symbol values.
15772 (Fset_coding_system_priority): Doc fix. Update symbol qvalues of
15773 coding-category-XXX, and coding-category-list.
15774 (Fdefine_coding_system_internal): Add category in the plist.
15775
157762008-02-01 Kenichi Handa <handa@m17n.org>
15777
15778 * callproc.c (Fcall_process): Handle carryover correctly.
15779
15780 * coding.c (decode_coding_iso_2022): Fix handling of invalid bytes.
15781 (raw_text_coding_system): Check NILP (coding_system).
15782 (coding_inherit_eol_type): Check NILP (coding_system) and
15783 NILP (parent).
15784 (consume_chars): Fix for the case of raw-text.
15785
15786 * process.c (read_process_output): Handle carryover correctly.
15787
157882008-02-01 Dave Love <fx@gnu.org>
15789
15790 * regex.c (re_search_2): Fix last change.
15791
157922008-02-01 Kenichi Handa <handa@m17n.org>
15793
15794 * regex.c (GET_CHAR_BEFORE_2): Check multibyte, not
15795 target_multibyte. Even in a unibyte case, return a converted
15796 multibyte char.
15797 (GET_CHAR_AFTER): New macro.
15798 (PATFETCH): Translate via multibyte char.
15799 (HANDLE_UNIBYTE_RANGE): Delete this macro.
15800 (SETUP_MULTIBYTE_RANGE): New macro.
15801 (regex_compile): Setup compiled code so that its multibyteness
15802 matches that of a target. Fix the handling of "[X-YZ]" using
15803 SETUP_MULTIBYTE_RANGE.
15804 (analyse_first) <charset>: For filling fastmap for all multibyte
15805 characters, don't check by BASE_LEADING_CODE_P.
15806 (re_search_2): Don't check RE_TARGET_MULTIBYTE_P (bufp). It is
15807 the same as RE_MULTIBYTE_P (bufp) now.
15808 (mutually_exclusive_p): Check by (! multibyte || IS_REAL_ASCII (c)).
15809 (TARGET_CHAR_AND_LENGTH): Delete this macro.
15810 (TRANSLATE_VIA_MULTIBYTE): New macro.
15811 (re_match_2_internal): Don't check RE_TARGET_MULTIBYTE_P (bufp).
15812 It is the same as RE_MULTIBYTE_P (bufp) now.
15813 <exactn>: Translate via multibyte.
15814 <anychar>: Fetch a character by RE_STRING_CHAR_AND_LENGTH. Don't
15815 translate it.
15816 <charset, charset_not>: Fetch a character by
15817 RE_STRING_CHAR_AND_LENGTH. Translate via multibyte.
15818 <duplicate>: Call bcmp_translate with the last arg `multibyte'.
15819 <wordbound, notwordbound, wordbeg, wordend, syntaxspec,
15820 notsyntaxspec, categoryspec, notcategoryspec> Fetch a character
15821 by GET_CHAR_AFTER.
15822 (bcmp_translate): Likewise.
15823
15824 * search.c (compile_pattern): Check the member target_multibyte,
15825 not the member multibyte of buf.
15826
15827 * lread.c (read1): While reading a string, set force_singlebyte
15828 and force_multibyte correctly.
15829
15830 * charset.c (Fset_unibyte_charset, init_charset_once): Fix setting
15831 up of unibyte_to_multibyte_table.
15832
158332008-02-01 Kenichi Handa <handa@m17n.org>
15834
15835 * coding.c (setup_coding_system): If coding has
15836 post-read-conversion or pre-write-conversion, set
15837 CODING_REQUIRE_DECODING_MASK and CODING_REQUIRE_ENCODING_MASK
15838 respectively.
15839 (decode_coding_gap): Run post-read-conversion if any.
15840
15841 * fileio.c (Finsert_file_contents): Even if we read into a
15842 unibyte buffer, check if we must decode the result or not.
15843
158442008-02-01 Kenichi Handa <handa@m17n.org>
15845
15846 * coding.c (make_conversion_work_buffer): Change the work buffer
15847 name to the same one as that of Emacs 21.
15848
158492008-02-01 Kenichi Handa <handa@m17n.org>
15850
15851 * coding.h (make_conversion_work_buffer): Adjust prototype.
15852 (code_conversion_restore): Don't extern it.
15853
15854 * coding.c (detected_mask): Delete unused variable.
15855 (decode_coding_iso_2022): Pay attention to the byte sequence of
15856 CTEXT extended segment, and retain those bytes as is.
15857 (decode_coding_ccl): Delete unused variable `valids'.
15858 (setup_coding_system): Delete unused variable `category'.
15859 (consume_chars): Delete unused variable `category'. Make it work
15860 for non-multibyte case.
15861 (make_conversion_work_buffer): Change argument.
15862 (saved_coding): Delete unused variable.
15863 (code_conversion_restore): Don't check saved_coding->destination.
15864 (code_conversion_save): New function.
15865 (decode_coding_gap, encode_coding_gap): Call code_conversion_save
15866 instead of record_unwind_protect.
15867 (decode_coding_object, encode_coding_object): Likewise. Recover PT.
15868 (detect_coding_system): Delete unused variable `mask'.
15869 (Fdefine_coding_system_internal): Delete unused variable id.
15870
15871 * fileio.c (kill_workbuf_unwind): New function.
15872 (Finsert_file_contents): On replacing, call
15873 make_conversion_work_buffer with correct args, and call
15874 record_unwind_protect with the first arg kill_workbuf_unwind.
15875
15876 * lisp.h (Fgenerate_new_buffer_name): EXFUN it.
15877
158782008-02-01 Kenichi Handa <handa@m17n.org>
15879
15880 * fontset.c (BASE_FONTSET_P): Check FONTSET_BASE, not FONTSET_NAME.
15881 (fontset_add): Fix for the case that TO is less than TO1.
15882 (Ffontset_info): Don't use fallback fontset on checking the
15883 default fontset.
15884 (dump_fontset): New function for debugging.
15885
15886 * coding.c (Fdefine_coding_system_internal): Fix for the case that
15887 coding_type is Qcharset.
15888
158892008-02-01 Kenichi Handa <handa@m17n.org>
15890
15891 * chartab.c (map_sub_char_table): New argument DEFAULT_VAL.
15892 (map_char_table): Don't inherit the value from the parent on
15893 initializing VAL. Adjust for the above change.
15894
158952008-02-01 Kenichi Handa <handa@m17n.org>
15896
15897 * coding.c (Qsignature, Qendian): Delete these variables.
15898 (syms_of_coding): Don't initialize them.
15899 (CATEGORY_MASK_UTF_16_AUTO): New macro.
15900 (detect_coding_utf_16): Add CATEGORY_MASK_UTF_16_AUTO in
15901 detect_info->found.
15902 (decode_coding_utf_16): Don't detect BOM here.
15903 (encode_coding_utf_16): Produce BOM if CODING_UTF_16_BOM (coding)
15904 is NOT utf_16_without_bom.
15905 (setup_coding_system): For a coding system of type utf-16, check
15906 if the attribute :endian is Qbig or not (not nil or not), and set
15907 CODING_REQUIRE_DETECTION_MASK if BOM detection is required.
15908 (detect_coding): If coding type is utf-16 and BOM detection is
15909 required, detect it.
15910 (Fdefine_coding_system_internal): For a coding system of type
15911 utf-16, check if the attribute :endian is Qbig or not (not nil or not).
15912
159132008-02-01 Kenichi Handa <handa@m17n.org>
15914
15915 * coding.c (coding_set_source): Fix for the case that the current
15916 buffer is different from coding->src_object.
15917 (decode_coding_object): Don't use the conversion work buffer if
15918 DST_OBJECT is a buffer.
15919
159202008-02-01 Dave Love <fx@gnu.org>
15921
15922 * lread.c (read_emacs_mule_char) [len==2]: Index
15923 emacs_mule_charset correctly.
15924
159252008-02-01 Dave Love <fx@gnu.org>
15926
15927 * coding.c (Qbig5, Vbig5_coding_system, CATEGORY_MASK_BIG5)
15928 (detect_coding_big5, decode_coding_big5, encode_coding_big5)
15929 (Fdecode_big5_char, Fencode_big5_char): Delete. (Big5 no longer
15930 treated specially.)
15931 (setup_coding_system, coding_category, CATEGORY_MASK_ANY)
15932 (detected_mask): Remove Big5 bits.
15933
159342008-02-01 Kenichi Handa <handa@m17n.org>
15935
15936 The following changes are to make the font rescaling facility
15937 compatible with Emacs 21.
15938
15939 * xfaces.c (Vface_font_rescale_alist): Rename from
15940 Vface_resizing_fonts.
15941 (struct font_name): Rename member resizing_ratio to rescale_ratio.
15942 (font_rescale_ratio): Rename from font_resizing_ratio.
15943 (split_font_name): Set font->rescale_ratio.
15944 (better_font_p): Pay attention to font->rescale_ratio.
15945 (build_scalable_font_name): Likewise. Change RESX, and RESY
15946 fields.
15947 (syms_of_xfaces): Declare Vface_font_rescale_alist as a Lisp variable.
15948
159492008-02-01 Kenichi Handa <handa@m17n.org>
15950
15951 * coding.c (Qutf_16_be_nosig, Qutf_16_be, Qutf_16_le_nosig)
15952 (Qutf_16_le): Remove these variables.
15953 (syms_of_coding): Don't DEFSYM them.
15954 (decode_coding_utf_16): Fix handling of BOM.
15955 (encode_coding_utf_16): Fix handling of BOM.
15956
159572008-02-01 Kenichi Handa <handa@m17n.org>
15958
15959 * fileio.c (Finsert_file_contents): On replacing, before decoding
15960 the file into the work buffer, set point of the work buffer to the end.
15961
159622008-02-01 Dave Love <fx@gnu.org>
15963
15964 * coding.c (Fcheck_coding_systems_region): Fix type errors.
15965
159662008-02-01 Dave Love <fx@gnu.org>
15967
15968 * xterm.c (XTread_socket): Check Lisp types for Vx_keysym_table
15969 and fix C types.
15970
159712008-02-01 Kenichi Handa <handa@m17n.org>
15972
15973 * xdisp.c (SKIP_GLYPHS): New macro.
15974 (set_cursor_from_row): Pay attention to string display properties.
15975
15976 * category.c (copy_category_entry): Fix for the case that RANGE
15977 is an integer.
15978
15979 * xterm.c (x_encode_char): Call ccl_driver with the last arg Qnil.
15980
15981 * w32term.c (w32_encode_char): Call ccl_driver with the last arg Qnil.
15982
159832008-02-01 Kenichi Handa <handa@m17n.org>
15984
15985 * charset.c (Fcharset_id_internal): New function.
15986 (syms_of_charset): Defsubr it.
15987
15988 * coding.c (decode_coding_ccl, encode_coding_ccl): Call ccl_driver
15989 with the last arg charset_list acquired from coding.
15990 (Fdefine_coding_system_internal): For ccl-based coding system, fix
15991 the attribute coding_attr_ccl_valids.
15992
15993 * coding.h (enum define_coding_ccl_arg_index): Set the first
15994 member coding_arg_ccl_decoder to coding_arg_max.
15995
15996 * ccl.h (ccl_driver): Adjust prototype.
15997
15998 * ccl.c (CCL_DECODE_CHAR, CCL_ENCODE_CHAR): New macros.
15999 (ccl_driver): New arg CHARSET_LIST. Use the above macros instead
60612c8f 16000 of DECODE_CHAR, ENCODE_CHAR, CHAR_CHARSET.
aac0c6e3
MR
16001 (Fccl_execute, Fccl_execute_on_string): Call ccl_driver with the
16002 last arg Qnil.
16003
160042008-02-01 Kenichi Handa <handa@m17n.org>
16005
16006 * charset.h (ENCODE_CHAR): If the method is SUBSET or SUPERSET,
16007 call encode_char.
16008
16009 * charset.c (encode_char): Fix handling of methods SUBSET and SUPERSET.
16010
160112008-02-01 Dave Love <fx@gnu.org>
16012
16013 * composite.c (syms_of_composite): Make composition_hash_table weak.
16014
160152008-02-01 Kenichi Handa <handa@m17n.org>
16016
16017 * dispextern.h (check_face_attributes, generate_ascii_font_name)
16018 (font_name_registry): Don't extern them.
16019 (split_font_name_into_vector, build_font_name_from_vector): Extern them.
16020
16021 * fontset.h (Qfontset): Don't extern it.
16022 (new_fontset_from_font_name): Extern it.
16023
16024 * fontset.c: Give 8 extra slots to fontset objects.
16025 (Qfontset_info): New variable.
16026 (syms_of_fontset): Defsym it.
16027 (FONTSET_FALLBACK): New macro.
16028 (fontset_face): Try also the default fontset.
16029 (make_fontset): Realize a fallback fontset from the default fontset.
16030 (generate_ascii_font_name): Move from xfaces.c. Rewritten by
16031 using split_font_name_into_vector and build_font_name_from_vector.
16032 (Fset_fontset_font): Access the elements of font_spec by enum
16033 FONT_SPEC_INDEX. If font_spec is a string, extract the registry
16034 name by using split_font_name_into_vector.
16035 (Fnew_fontset): If no ASCII font is specified in FONTLIST,
16036 generate a proper font name from the fontset name. Update
16037 Vfontset_alias_alist.
16038 (n_auto_fontsets): New variable.
16039 (new_fontset_from_font_name): New function.
16040 (Ffont_info): Store the information about fonts generated from the
16041 default fontset in the first extra slot of the returned char-table.
16042
16043 * xfaces.c (generate_ascii_font_name): Move to fontset.c.
16044 (font_name_registry): Delete function.
16045 (split_font_name_into_vector): New function.
16046 (build_font_name_from_vector): New function.
16047 (font_list): The argument REGISTRY is now a list of registry names.
16048 (choose_face_font): If we are choosing an ASCII font, and ATTRS
16049 specifies an explicit font name, return the name as is. Make a
16050 list of registy names.
16051
16052 * xfns.c (x_set_font, x_create_tip_frame): Adjust for the change
16053 of x_new_fontset.
16054 (Fx_create_frame): Don't call x_new_fontset here. Just use
16055 x_list_fonts to check the existence of fonts.
16056
16057 * xterm.h (x_new_fontset): Adjust prototype.
16058
16059 * xterm.c (x_new_fontset): Change the arg FONTSETNAME to Lisp
16060 string. Use new_fontset_from_font_name to create a fontset from a
16061 font name.
16062
160632008-02-01 Kenichi Handa <handa@m17n.org>
16064
16065 * syntax.c (Vfind_word_boundary_function_table): New name for
16066 Vnext_word_boundary_function_table.
16067 (find-word-boundary-function-table): New name for
16068 next-word-boundary-function-table.
16069
160702008-02-01 Dave Love <fx@gnu.org>
16071
16072 * Makefile.in: Fix some dependencies.
16073
16074 * keymap.c (Fapropos_internal): Don't gcpro apropos_predicate but
16075 set it to nil before returning.
16076
16077 * composite.c (update_compositions): Fix type error.
16078
16079 * syntax.c (skip_chars, skip_syntaxes): Fix type errors.
16080
160812008-02-01 Kenichi Handa <handa@m17n.org>
16082
16083 * xterm.c (x_new_font): Optimize for the case that the font is
16084 already set for the frame.
16085
160862008-02-01 Kenichi Handa <handa@m17n.org>
16087
16088 * chartab.c (char_table_ascii): Check if the char table contents
16089 is sub-char-table or not.
16090 (char_table_set, char_table_set_range): Fix argument to
16091 char_table_ascii.
16092
16093 * coding.c (CATEGORY_MASK_RAW_TEXT): New macro.
16094 (detect_coding_utf_8, detect_coding_utf_16)
16095 (detect_coding_emacs_mule, detect_coding_iso_2022)
16096 (detect_coding_sjis, detect_coding_big5)
16097 (detect_coding_ccl, detect_coding_charset): Change argument MASK
16098 to DETECT_INFO. Update DETECT_INFO and return 1 if the byte
16099 sequence is valid in this coding system. Change callers.
16100 (MAX_ANNOTATION_LENGTH): New macro.
16101 (ADD_ANNOTATION_DATA): New macro.
16102 (ADD_COMPOSITION_DATA): Change argument. Change callers. Call
16103 ADD_ANNOTATION_DATA. Change the format of annotation data.
16104 (ADD_CHARSET_DATA): New macro.
16105 (emacs_mule_char): New argument ID. Change callers.
16106 (decode_coding_emacs_mule, decode_coding_iso_2022)
16107 (decode_coding_sjis, decode_coding_big5, decode_coding_charset):
16108 Produce charset annotation data in coding->charbuf.
16109 (encode_coding_emacs_mule, encode_coding_iso_2022): Pay attention
16110 to charset annotation data in coding->charbuf.
16111 (setup_coding_system): Add CODING_ANNOTATE_CHARSET_MASK
16112 coding->common_flags if the coding system is iso-2022 based and
16113 uses designation.
16114 (produce_composition): Adjust for the new annotation data format.
16115 (produce_charset): New function.
16116 (produce_annotation): Handle charset annotation.
16117 (handle_composition_annotation, handle_charset_annotation): New
16118 functions.
16119 (consume_chars): Handle charset annotation. Utilize the above two
16120 functions.
16121 (encode_coding_object): If SRC_OBJECT and DST_OBJECT are the same
16122 buffer, get the deleted text as a string and set
16123 coding->src_object to that string.
16124 (detect_coding, detect_coding_system): Use the new struct
16125 coding_detection_info.
16126
16127 * coding.h (struct coding_detection_info): New structure.
16128 (struct coding_system): Adjust prototype of the member `detector'.
16129 (CODING_ANNOTATE_CHARSET_MASK): New macro.
16130
161312008-02-01 Kenichi Handa <handa@m17n.org>
16132
16133 * insdel.c (insert_from_gap): Fix argument to offset_intervals.
16134
161352008-02-01 Dave Love <fx@gnu.org>
16136
16137 * keymap.c (apropos_predicate, apropos_accumulate): Declare static.
16138 (Fapropos_internal): Don't gcpro apropos_accumulate. Set result
16139 to new local and nullify apropos_accumulate before returning.
16140 (syms_of_keymap): Staticpro and initialize apropos_accumulate.
16141
161422008-02-01 Kenichi Handa <handa@m17n.org>
16143
16144 * charset.c (Fdefine_charset_internal): Setup charset.fast_map
16145 correctly.
e3eea1fc 16146
aac0c6e3
MR
161472008-02-01 Dave Love <fx@gnu.org>
16148
16149 * fns.c (Flanginfo): Call synchronize_system_time_locale.
16150
161512008-02-01 Kenichi Handa <handa@m17n.org>
16152
16153 The following changes are to make character composition happen
16154 automatically on displaying.
16155
16156 * Makefile.in (lisp, shortlisp): Add composite.elc.
16157
16158 * composite.h (Qauto_composed, Vauto_composition_function)
16159 (Qauto_composition_function): Extern them.
16160
16161 * composite.c (Vcomposition_function_table)
16162 (Qcomposition_function_table): Delete variables.
16163 (Qauto_composed, Vauto_composition_function)
16164 (Qauto_composition_function): New variables.
16165 (run_composition_function): Don't call
16166 compose-chars-after-function.
16167 (update_compositions): Clear `auto-composed' text property.
16168 (compose_chars_in_text): Delete this function.
16169 (syms_of_composite): Staticpro Qauto_composed and
16170 Qauto_composition_function. Declare Vauto_composition_function as
16171 a Lisp variable.
16172
16173 * dispextern.h (enum prop_idx): Add member AUTO_COMPOSED_PROP_IDX.
16174
16175 * xdisp.c (it_props): Add an entry for Qauto_composed.
16176 (handle_auto_composed_prop): New function.
16177
16178 * xselect.c (selection_data_to_lisp_data): Don't call
16179 compose_chars_in_text.
16180
161812008-02-01 Dave Love <fx@gnu.org>
16182
16183 * keyboard.c (read_char): Modify checking around use of
16184 Vkeyboard_translate_table.
16185
16186 * xterm.c (XTread_socket): Check Lisp types for Vx_keysym_table
16187 and fix C types.
16188
161892008-02-01 Kenichi Handa <handa@m17n.org>
16190
16191 * coding.c (decode_coding_utf_8, decode_coding_emacs_mule)
16192 (decode_coding_iso_2022, decode_coding_sjis, decode_coding_big5)
16193 (decode_coding_charset, produce_chars): When eol_type is Qdos, handle
16194 the case that the last byte is '\r' correctly.
16195 (decode_coding): Flush out the unprocessed data correctly.
16196 (decode_coding_gap): Set CODING_MODE_LAST_BLOCK bit of coding->mode.
16197
161982008-02-01 Dave Love <fx@gnu.org>
16199
16200 * xterm.c (XTread_socket): Fix changes for defined keysyms.
16201 Add XK_ISO... case.
16202 (xaw_scroll_callback): Revert last change.
16203
162042008-02-01 Kenichi Handa <handa@m17n.org>
16205
16206 * charset.c (Fset_charset_priority): Update Viso_2022_charset_list.
16207
162082008-02-01 Kenichi Handa <handa@m17n.org>
16209
16210 * xfaces.c (Vface_resizing_fonts): New variable.
16211 (struct font_name): New member `resizing_ratio'.
16212 (font_resizing_ratio): New function.
16213 (split_font_name): Set font->resizing_ratio.
16214 (better_font_p): Pay attention to font->resizing_ratio.
16215 (build_scalable_font_name): Likewise. Don't change POINT_SIZE,
16216 RESX, and RESY fields.
16217 (try_alternative_families): Try scalable fonts if
16218 Vscalable_fonts_allowed is not Qt.
16219 (syms_of_xfaces): Declare Vface_resizing_fonts as a Lisp variable.
16220
162212008-02-01 Dave Love <fx@gnu.org>
16222
16223 * xterm.c (xaw_scroll_callback): Cast correctly.
16224
162252008-02-01 Dave Love <fx@gnu.org>
16226
16227 * keyboard.c (lispy_accent_codes, lispy_accent_keys): Extend.
16228 (lispy_kana_keys): Comment out.
16229 (make_lispy_event) [XK_kana_A]: Comment out.
16230
16231 * xterm.c (xaw_scroll_callback): Cast call_data.
16232 (XTread_socket): Deal with ASCII keysyms.
16233 (syms_of_xterm) <Vx_keysym_table>: Fix args of make_hash_table.
16234
162352008-02-01 Dave Love <fx@gnu.org>
16236
16237 * xterm.c (Vx_keysym_table): New.
16238 (syms_of_xterm): Initialize it.
16239 (XTread_socket): Use it.
16240 From head: Eliminate incorrect optimization that tried to avoid
16241 decoding the output of X*LookupString.
16242 (x_get_font_repertory): Delete charset declaration.
16243
162442008-02-01 Kenichi Handa <handa@m17n.org>
16245
16246 * coding.c (detect_coding_charset): If only ASCII bytes are found,
16247 return 0.
16248 (Fdefine_coding_system_internal): Setup
16249 CODING_ATTR_ASCII_COMPAT (attrs) correctly.
16250
162512008-02-01 Dave Love <fx@gnu.org>
16252
16253 * coding.c (Fcheck_coding_system): Doc fix.
16254
16255 * editfns.c (Finsert_byte): Return a proper value.
16256
162572008-02-01 Kenichi Handa <handa@m17n.org>
16258
16259 * coding.c (decode_coding): Fix args to translate_chars. Pay
16260 attention to Vstandard_translation_table_for_decode.
16261 (encode_coding): Fix args to translate_chars. Pay attention to
16262 Vstandard_translation_table_for_encode.
16263
16264 * data.c (Faset): Check NEWELT by ASCII_CHAR_P, not by
16265 SINGLE_BYTE_CHAR_P.
16266
16267 * editfns.c (general_insert_function): Check VAL by ASCII_CHAR_P,
16268 not by SINGLE_BYTE_CHAR_P.
16269
16270 * fns.c (concat): Check CH by ASCII_CHAR_P, not by
16271 SINGLE_BYTE_CHAR_P.
16272
16273 * insdel.c (copy_text): Check C by ASCII_CHAR_P, not by
16274 SINGLE_BYTE_CHAR_P.
16275
16276 * keymap.c (Ftext_char_description): Check C by ASCII_CHAR_P, not
16277 by SINGLE_BYTE_CHAR_P.
16278
16279 * search.c (Freplace_match): Check C by ASCII_CHAR_P, not by
16280 SINGLE_BYTE_CHAR_P.
16281
162822008-02-01 Dave Love <fx@gnu.org>
16283
16284 * fns.c (Fstring_as_multibyte, Fstring_to_multibyte): Doc fix.
16285
162862008-02-01 Dave Love <fx@gnu.org>
16287
16288 * fns.c (Flanginfo): Fix typo.
16289
16290 * unexelf.c (unexec): Make last change conditional on Irix 6.5.
16291
162922008-02-01 Kenichi Handa <handa@m17n.org>
16293
16294 * coding.c (detect_coding_utf_8, detect_coding_utf_16)
16295 (detect_coding_emacs_mule, detect_coding_iso_2022)
16296 (detect_coding_sjis, detect_coding_big5, detect_coding_ccl): Check
16297 incomplete byte sequence. Don't update *mask when correctly detected.
16298 (decode_coding_sjis): Fix decoding of katakana-jisx0201.
16299 (detect_eol): Delete the argument CODING, and add the argument CATEGORY.
16300 (detect_coding, detect_coding_system): Adjust for the changes above.
16301
163022008-02-01 Kenichi Handa <handa@m17n.org>
16303
16304 * character.c (char_string): Rename from
16305 char_string_with_unification. Pay attention to CHAR_MODIFIER_MASK.
16306 (string_char): Rename from string_char.
16307
16308 * character.h (CHAR_STRING, CHAR_STRING_ADVANCE): Call char_string
16309 if C is greater than MAX_3_BYTE_CHAR.
16310 (STRING_CHAR, STRING_CHAR_AND_LENGTH, STRING_CHAR_ADVANCE): Call
16311 string_char instead of string_char_with_unification.
16312
163132008-02-01 Dave Love <fx@gnu.org>
16314
16315 * coding.c (decode_coding_utf_8): Treat surrogates as invalid.
16316
163172008-02-01 Kenichi Handa <handa@m17n.org>
16318
16319 * keymap.c (push_key_description): Pay attention to force_multibyte.
16320
16321 * regex.c (re_search_2): Fix for the case of unibyte buffer.
16322
163232008-02-01 Dave Love <fx@gnu.org>
16324
16325 * charset.c (define_charset_internal): Rename `supprementary'.
16326
16327 * Makefile.in (lisp, shortlisp): Remove latin-N.
16328
163292008-02-01 Dave Love <fx@gnu.org>
16330
16331 * xfns.c (x_window, x_window): Use use_xim.
16332
16333 * xterm.c (use_xim): Initialize.
16334 (xim_open_dpy, xim_initialize, xim_close_dpy): Use use_xim.
16335 (x_term_init): Maybe set use_xim.
16336
16337 * xterm.h (use_xim) [HAVE_X_I18N]: Declare.
16338
163392008-02-01 Kenichi Handa <handa@m17n.org>
16340
16341 * search.c (search_buffer): Fix case-fold-search of multibyte
16342 characters.
16343 (boyer_moore): Rename the last argument to char_high_bits.
16344
163452008-02-01 Kenichi Handa <handa@m17n.org>
16346
16347 * xdisp.c (display_string): Fix for the case of zero width glyph.
16348
16349 * xfns.c (x_set_font): Change the error message of the case that
16350 x_new_fontset returns Qt.
16351
16352 * xfaces.c (set_lface_from_font_name): Reject the default fontset.
16353 (Finternal_set_lisp_face_attribute): Use signal_error for the
16354 error of invalid fontset.
16355
16356 * xterm.c (x_new_fontset): If FONTSETNAME specifies the default
16357 fontset, return Qt.
16358
163592008-02-01 Dave Love <fx@gnu.org>
16360
16361 * unexelf.c (unexec): Make .got handling not SGI-specific.
16362
16363 * syntax.c (syms_of_syntax) <multibyte-syntax-as-symbol>: Doc fix.
16364
16365 * regex.c: Use `ifdef HAVE_ALLOCA_H', not `if HAVE_ALLOCA_H'.
16366
16367 * keyboard.c (read_key_sequence): Fix type error.
16368
16369 * buffer.c (Fset_buffer_multibyte, Fset_buffer_multibyte): Fix
16370 type error.
16371
16372 * fontset.c (fontset_add): Return Lisp_Object.
16373
163742008-02-01 Dave Love <fx@gnu.org>
16375
16376 * charset.h (charset_ordered_list_tick): Declare extern.
16377
163782008-02-01 Kenichi Handa <handa@m17n.org>
16379
16380 The following changes (and some of 2008-02-01 changes of mine) are
16381 for handling syntax, category, and case conversion for unibyte
16382 characters by converting them to multibyte on the fly. With these
16383 changes, we don't have to setup syntax and case tables for unibyte
16384 characters in each language environment.
16385
16386 * abbrev.c (Fexpand_abbrev): Convert a unibyte character to
16387 multibyte if necessary.
16388
16389 * bytecode.c (Fbyte_code): Likewise.
16390
16391 * character.h (LEADING_CODE_LATIN_1_MIN)
16392 (LEADING_CODE_LATIN_1_MAX): New macros.
16393 (unibyte_to_multibyte_table): Extern it.
16394 (unibyte_char_to_multibyte): New macro.
16395 (MAKE_CHAR_MULTIBYTE): Use unibyte_to_multibyte_table.
16396 (CHAR_LEADING_CODE): New macro.
16397 (FETCH_STRING_CHAR_AS_MULTIBYTE_ADVANCE): New macro.
16398
16399 * character.c (unibyte_to_multibyte_table): New variable.
16400 (unibyte_char_to_multibyte): Move to character.h and define as macro.
16401 (multibyte_char_to_unibyte): If C is an eight-bit character,
16402 convert it to the corresponding byte value.
16403
16404 * charset.c (Fset_unibyte_charset): If the dimension of CHARSET is
16405 not 1, signals an error. Update the elements of
16406 unibyte_to_multibyte_table.
16407 (init_charset_once): Initialize unibyte_to_multibyte_table.
16408 (syms_of_charset): Define the charset `iso-8859-1'.
16409
16410 * cmds.c (internal_self_insert): In a multibyte buffer, insert C
16411 as is without converting it to unibyte. In a unibyte buffer,
16412 convert C to multibyte before checking the syntax.
16413
16414 * lisp.h (unibyte_char_to_multibyte): Delete extern.
16415
16416 * minibuf.c (Fminibuffer_complete_word): Use the macro
16417 FETCH_STRING_CHAR_AS_MULTIBYTE_ADVANCE.
16418
16419 * regex.h (struct re_pattern_buffer): New member target_multibyte.
16420
16421 * regex.c (RE_TARGET_MULTIBYTE_P): New macro.
16422 (GET_CHAR_BEFORE_2): Check target_multibyte, not multibyte. If
16423 that is zero, convert an eight-bit char to multibyte.
16424 (MAKE_CHAR_MULTIBYTE, CHAR_LEADING_CODE): New dummy new macros for
16425 non-emacs case.
16426 (PATFETCH): Convert an eight-bit char to multibyte.
16427 (HANDLE_UNIBYTE_RANGE): New macro.
16428 (regex_compile): Setup the compiled pattern for multibyte chars
16429 even if the given regex string is unibyte. Use PATFETCH_RAW
16430 instead of PATFETCH in many places. To handle `charset'
16431 specification of unibyte, call HANDLE_UNIBYTE_RANGE. Use bitmap
16432 only for ASCII chars.
16433 (analyse_first) <exactn>: Simplify because the compiled pattern
16434 is multibyte.
16435 <charset_not>: Setup fastmap from bitmap only for ASCII chars.
16436 <charset>: Use CHAR_LEADING_CODE to get leading codes.
16437 <categoryspec>: If multibyte, setup fastmap only for ASCII chars here.
16438 (re_compile_fastmap) [emacs]: Call analyse_first with the arg
16439 multibyte always 1.
16440 (re_search_2): In emacs, set the locale variable multibyte to 1,
16441 otherwise to 0. New local variable target_multibyte. Check it
16442 to decide the multibyteness of STR1 and STR2. If
16443 target_multibyte is zero, convert unibyte chars to multibyte
16444 before translating and checking fastmap.
16445 (TARGET_CHAR_AND_LENGTH): New macro.
16446 (re_match_2_internal): In emacs, set the locale variable multibyte
16447 to 1, otherwise to 0. New local variable target_multibyte. Check
16448 it to decide the multibyteness of STR1 and STR2. Use
16449 TARGET_CHAR_AND_LENGTH to fetch a character from D.
16450 <charset, charset_not>: If multibyte is nonzero, check fastmap
16451 only for ASCII chars. Call bcmp_translate with
16452 target_multibyte, not with multibyte.
16453 <begline>: Declare the local variable C as `unsigned'.
16454 (bcmp_translate): Change the last arg name to target_multibyte.
16455
16456 * search.c (compile_pattern_1): Don't adjust the multibyteness of
16457 the regexp pattern and the matching target. Set cp->buf.multibyte
16458 to the multibyteness of the regexp pattern. Set
16459 cp->but.target_multibyte to the multibyteness of the matching target.
16460 (wordify): Use FETCH_STRING_CHAR_AS_MULTIBYTE_ADVANCE instead of
16461 FETCH_STRING_CHAR_ADVANCE.
16462 (Freplace_match): Convert unibyte chars to multibyte.
16463
16464 * syntax.c (char_quoted, back_comment, scan_words)
16465 (Fforward_comment, scan_lists, Fbackward_prefix_chars)
16466 (scan_sexps_forward): Use FETCH_CHAR_AS_MULTIBYTE to convert
16467 unibyte chars to multibyte.
16468 (skip_chars): Delete the arg syntaxp, and move the code for
16469 handling syntaxes to skip_syntaxes. Change callers.
16470 Fix the case that the multibyteness of STRING and the current
16471 buffer doesn't match.
16472 (skip_syntaxes): New function.
16473 (SYNTAX_WITH_MULTIBYTE_CHECK): Check C by ASCII_CHAR_P, not by
16474 SINGLE_BYTE_CHAR_P.
16475
164762008-02-01 Kenichi Handa <handa@m17n.org>
16477
16478 * xfaces.c (QCfontset): New variable.
16479 (LFACE_FONTSET): New macro.
16480 (check_lface_attrs): Check also LFACE_FONTSET_INDEX.
16481 (set_lface_from_font_name): Setup LFACE_FONTSET (lface).
16482 (Finternal_set_lisp_face_attribute)
16483 (Finternal_get_lisp_face_attribute): Handle QCfontset.
16484 (lface_same_font_attributes_p): Fix checking of LFACE_FONT_INDEX,
16485 check also LFACE_FONTSET_INDEX.
16486 (face_fontset): Check attrs[LFACE_FONTSET_INDEX], not
16487 attrs[LFACE_FONT_INDEX].
16488 (syms_of_xfaces): Intern and staticpro QCfontset.
16489
16490 * dispextern.h (enum lface_attribute_index): New member
16491 LFACE_FONTSET_INDEX.
16492
16493 * fns.c (base64_encode_1): Handle eight-bit chars correctly.
16494
164952008-02-01 Kenichi Handa <handa@m17n.org>
16496
16497 * coding.c (coding_set_destination): Fix coding->destination for
16498 the case converting a region.
16499 (encode_coding_utf_8): Encode eight-bit chars as single byte.
16500 (encode_coding_object): Fix coding->dst_pos and
16501 coding->dst_pos_byte for the case converting a region.
16502
16503 * insdel.c (insert_from_gap): Make it work even if PT != GTP.
16504
16505 * character.h (BYTE8_STRING): New macro.
16506
16507 * fns.c (base64_decode_1): Insert eight-bit chars correctly.
16508
165092008-02-01 Kenichi Handa <handa@m17n.org>
16510
16511 * xdisp.c (get_next_display_element): Don't display unibyte 8-bit
16512 characters by octal form.
16513
16514 * abbrev.c (Fexpand_abbrev): Fix for the multibyte case.
16515
16516 * buffer.h (_fetch_multibyte_char_len): Delete extern.
16517 (FETCH_MULTIBYTE_CHAR, BUF_FETCH_MULTIBYTE_CHAR): Don't use
16518 _fetch_multibyte_char_len.
16519 (FETCH_CHAR_AS_MULTIBYTE): New macro.
16520
16521 * casetab.c (set_canon, set_identity, shuffle): Simplify.
16522
16523 * casefiddle.c (casify_object): Simplify. Handle the case that
16524 the case conversion change the byte length.
16525 (casify_region): Likewise.
16526
16527 * character.h (MAKE_CHAR_UNIBYTE, MAKE_CHAR_MULTIBYTE): New macros.
16528
16529 * character.c (_fetch_multibyte_char_len): Delete this variable.
16530 (syms_of_character): Setup Vprintable_chars.
16531
16532 * editfns.c (Fchar_equal): Fix for the unibyte case.
16533 (Finsert_byte): New function.
16534 (syms_of_editfns): Defsubr it.
16535
16536 * keyboard.c (read_key_sequence): Use ~CHAR_MODIFIER_MASK instead
16537 of direct code 0x3ffff.
16538
16539 * search.c (Freplace_match): Fix for the unibyte case.
16540
165412008-02-01 Kenichi Handa <handa@m17n.org>
16542
16543 * lread.c (safe_to_load_p): Fix the logic.
16544
16545 * syntax.c (scan_words): Don't treat characters belonging to
16546 different scripts as constituting a word.
16547
16548 * editfns.c (Fformat): Use ASCII_CHAR_P, not SINGLE_BYTE_CHAR_P.
16549
16550 * fontset.c (Fset_fontset_font): Treat `ascii' as charset, not script.
16551
16552 * emacs.c (main): In the case of --unibyte, instead of aborting on
16553 finding non-empty buffer, make it unibyte.
16554
165552008-02-01 Kenichi Handa <handa@m17n.org>
16556
16557 * xterm.c (x_new_fontset): Call `create-fontset-from-ascii-font'
16558 to create a fontset.
16559
165602008-02-01 Dave Love <fx@gnu.org>
16561
16562 * character.c (Funibyte_char_to_multibyte): Doc fix.
16563
16564 * xfns.c [HAVE_STDLIB_H]: Fix last change.
16565
165662008-02-01 Kenichi Handa <handa@m17n.org>
16567
16568 * fontset.c (fontset_add): Make the type `int'.
16569 (fontset_id_valid_p): Define it if FONTSET_DEBUG is defined.
16570
16571 * character.c (unibyte_char_to_multibyte)
16572 (multibyte_char_to_unibyte, Funibyte_char_to_multibyte): Refer to
16573 charset_unibyte, not charset_primary.
16574
16575 * charset.h (charset_unibyte): Extern it instead of charset_primary.
16576
16577 * charset.c (charset_unibyte): Rename from charset_primary.
16578 (Funibyte_charset): Rename from Fprimary_charset.
16579 (Fset_unibyte_charset): Rename from Fset_primary_charset.
16580 (syms_of_charset): Adjust for the above changes.
16581
16582 * w32term.c (x_produce_glyphs): Use ASCII_CHAR_P, not
16583 SINGLE_BYTE_CHAR_P. Fix the logic of handling non-ASCII char when
16584 it->multibyte_p is zero.
16585
16586 * lisp.h (nonascii_insert_offset, Vnonascii_translation_table):
16587 Delete extern.
16588
165892008-02-01 Kenichi Handa <handa@m17n.org>
16590
16591 * coding.c (Fdefine_coding_system_internal): Fix category setting
16592 for a coding system of type iso-2022.
16593
165942008-02-01 Kenichi Handa <handa@m17n.org>
16595
16596 * fontset.h (FS_LOAD_FONT): Call fs_load_font with the arg CHARSET -1.
16597
165982008-02-01 Kenichi Handa <handa@m17n.org>
16599
16600 * syntax.c (Vnext_word_boundary_function_table): New variable.
16601 (next-word-boundary-function-table): Declare it as a Lisp variable
16602 in syms_of_syntax.
16603 (scan_words): Call functions in Vnext_word_boundary_function_table
16604 if any.
16605
16606 * xterm.c (x_load_font): Initialize fontp->fontset to -1.
16607
16608 * fontset.c (fs_load_font): If fontp->charset is not negative,
16609 return fontp without setting its members.
16610
166112008-02-01 Dave Love <fx@gnu.org>
16612
16613 * xfns.c [HAVE_STDLIB_H]: Change logic (instead of fixing typo).
16614
16615 * m/sparc.h (HAVE_ALLOCA): Delete.
16616
16617 * s/irix6-5.h: Don't include strings.h.
16618 (bcopy, bzero, bcmp): Don't undef.
16619
16620 * s/irix6-0.h (bcopy, bzero, bcmp): Don't undef.
16621
16622 * s/usg5-4.h (NO_SIOCTL_H): Don't define.
16623 (TIOCSIGSEND): Don't test IRIX6.
16624 (bcopy, bzero, bcmp): Define conditionally.
16625
166262008-02-01 Kenichi Handa <handa@m17n.org>
16627
16628 * buffer.c (Qas, Qmake, Qto): New variables.
16629 (Fset_buffer_multibyte): New optional arg METHOD. Change caller.
16630 (syms_of_buffer): Intern and staticpro Qas, Qmake, and Qto.
16631
16632 * callproc.c (Fcall_process): Don't call insert_1_both directly if
16633 we are inserting a process output into a multibyte buffer.
16634
16635 * character.h (CHAR_TO_BYTE8): If C is not eight-bit char, call
16636 multibyte_char_to_unibyte.
16637
16638 * character.c (Funibyte_char_to_multibyte): If C can't be decoded
16639 by the primary charset, make it eight-bit char.
16640 (Fmultibyte_char_to_unibyte): Call CHAR_TO_BYTE8.
16641
16642 * charset.c (charset_eight_bit, Qeight_bit_control): New variables.
16643 (charset_8_bit__control, charset_8_bit_graphic)
16644 (Qeight_bit_control, Qeight_bit_graphic): Delete these variables.
16645 (define_charset_internal): New function.
16646 (syms_of_charset): Call define_charset_internal for pre-defined
16647 charsets.
16648
16649 * charset.h (charset_8_bit): Extern it.
16650
16651 * coding.c (make_conversion_work_buffer): Adjust for the change
16652 of Fset_buffer_multibyte.
16653 (encode_coding_raw_text): Increment p0 in the loop.
16654
16655 * lisp.h (Fset_buffer_multibyte): Adjust prototype.
16656
16657 * xdisp.c (setup_echo_area_for_printing, set_message_1): Adjust
16658 for the change of Fset_buffer_multibyte.
16659
16660 * fns.c (Fstring_to_multibyte): New function.
16661 (syms_of_fns): Declare Fstring_to_multibyte as Lisp subroutine.
16662
166632008-02-01 Dave Love <fx@gnu.org>
16664
16665 * xfns.c (x_put_x_image): Declare args.
16666
16667 * xfaces.c (font_name_registry, choose_face_font): Delete unused vars.
16668 (try_font_list): Declare an arg.
16669
16670 * xdisp.c (message2_nolog, set_message): Declare an arg.
16671
16672 * terminfo.c (tparam): Declare an arg. Use P_ to declare tparm.
16673
16674 * syntax.c (scan_sexps_forward): Declare an arg.
16675
16676 * scroll.c (calculate_scrolling, calculate_direct_scrolling):
16677 Declare an arg.
16678
16679 * lisp.h (Fnew_fontset): Declare.
16680
16681 * keymap.c (push_key_description): Call CHARACTERP correctly.
16682
16683 * fontset.c (fontset_add): Declare args. Call make_number correctly.
16684 (face_for_char): Delete unused vars.
16685 (Fset_fontset_font): Doc fix. Delete unused vars.
16686
16687 * doc.c (Fsubstitute_command_keys): Delete unused vars.
16688
16689 * composite.c (update_compositions): Declare arg.
16690
16691 * cm.c (calccost, cmgoto): Declare args.
16692
16693 * charset.c: Remove `emacs' conditional. Doc fixes.
16694 (map_char_table_for_charset): Declare.
16695
16696 * character.c (syms_of_character) <translation-table-vector>: Doc fix.
16697
16698 * ccl.c: Remove `emacs' conditional.
16699
167002008-02-01 Kenichi Handa <handa@m17n.org>
16701
16702 The following changes are to allow specifying multiple font
16703 patterns for a character range (specified by script or charset).
16704
16705 * Makefile.in (abbrev.o): Depend on syntax.h.
16706 (xfaces.o): Depend on charset.h.
16707
16708 * alloc.c (Fmake_string): Use ASCII_CHAR_P, not
16709 SINGLE_BYTE_CHAR_P.
16710
16711 * ccl.c (Fccl_execute_on_string): Add `const' to local variables.
16712
16713 * character.h (Vchar_script_table): Extern it.
16714
16715 * character.c (Vscript_alist): Delete.
16716 (Vchar_script_table, Qchar_script_table): New variable.
16717 (syms_of_character): Declare Vchar_script_table as a lisp variable
16718 and initialize it.
16719
16720 * chartab.c (Fmake_char_table): Doc fix. If PURPOSE doesn't
16721 have property char-table-extra-slots, make no extra slot.
16722
16723 * dispextern.h (struct face): Delete member `charset'.
16724 (FACE_SUITABLE_FOR_CHAR_P, FACE_FOR): Use ASCII_CHAR_P, not
16725 SINGLE_BYTE_CHAR_P.
16726 (choose_face_font, lookup_non_ascii_face, font_name_registry):
16727 Add prototypes.
16728 (lookup_face, lookup_named_face, lookup_derived_face): Fix prototype.
16729 (generate_ascii_font_name): Rename from generate_ascii_font.
16730
16731 * fontset.h (get_font_repertory_func): New prototype.
16732 (make_fontset_for_ascii_face, fs_load_font): Fix prototypes.
16733 (FS_LOAD_FONT): Call fs_load_font with the 3rd arg charset_ascii.
16734
16735 * fontset.c (Qprepend, Qappend): New variables.
16736 (FONTSET_CHARSET_ALIST, FONTSET_FACE_ALIST): Delete.
16737 (FONTSET_NOFONT_FACE, FONTSET_REPERTORY): New macros.
16738 (FONTSET_REF): Optimize if FONTSET is Vdefault_fontset.
16739 (FONTSET_REF_AND_RANGE, FONTSET_ADD): New macros.
16740 (fontset_ref_and_range, fontset_add, reorder_font_vector)
16741 (load_font_get_repertory): New functions.
16742 (fontset_set): Delete.
16743 (fontset_face): New arg FACE. Return face ID, not face.
16744 Complete re-write to handle new fontset structure. Change caller.
16745 (free_face_fontset): Use ASET istead of AREF (X) = Y.
16746 (face_for_char): Don't call lookup_face.
16747 (make_fontset_for_ascii_face): New arg FACE.
16748 (fs_load_font): New arg CHARSET_ID. Don't check
16749 Vfont_encoding_alist here.
16750 (find_font_encoding): New function.
16751 (list_fontsets): Use STRINGP, not ! NILP.
16752 (accumulate_script_ranges): New function.
16753 (Fset_fontset_font, Fnew_fontset, Ffontset_info): Completely
16754 re-written to handle new fontset structure.
16755 (Ffontset_font): Return a copy of element.
16756 (syms_of_fontset): Define symbols Qprepend and Qappend. Fix
16757 docstring of font-encoding-alist.
16758
16759 * lisp.h (CHAR_TABLE_REF): Remove unnecessary check (IDX >= 0).
16760 (Fset_fotset_font): Fix arguments to 5.
16761
16762 * msdos.c (XMenuActivate): Adjust for the change of lookup_derived_face.
16763
16764 * xdisp.c (message_dolog, set_message_1, extend_face_to_end_of_line):
16765 Use ASCII_CHAR_P, not SINGLE_BYTE_CHAR_P.
16766 (highlight_trailing_whitespace): Adjust for the change of
16767 lookup_named_face.
16768
16769 * xfaces.c: Include charset.h.
16770 (load_face_font): Delete argument C. Change caller.
16771 (generate_ascii_font_name): Rename from generate_ascii_font.
16772 (font_name_registry): New function.
16773 (cache_face): Store ascii faces before non-ascii faces in buckets.
16774 (lookup_face): Delete arguments C and BASE_FACE. Change caller.
16775 Lookup only ascii faces.
16776 (lookup_non_ascii_face): New function.
16777 (lookup_named_face): Delete argument C. Change caller.
16778 (lookup_derived_face): Delete argument C. Change caller.
16779 (try_font_list): New arg PATTERN. Change caller. If PATTERN is
16780 a string, just call font_list with it.
16781 (choose_face_font): Delete arguments FACE and C. New arg
16782 FONT_SPEC. Change caller.
16783 (realize_face, realize_x_face): Delete arguments C and BASE_FACE.
16784 Change caller.
16785 (realize_non_ascii_face): New function.
16786 (realize_x_face): Call load_face_font here.
16787 (realize_tty_face): Delete argument C. Change caller.
16788 (compute_char_face): If CH is not ascii, call FACE_FOR_CHAR to
16789 get a face ID.
16790 (dump_realized_face): Don't print charset of FACE.
16791
16792 * xfns.c (x_set_font): Always call x_new_fontset and
16793 store_frame_parameter.
16794 (Fx_create_frame): Call x_new_fontset, not x_new_font.
16795 (syms_of_xfns): Set get_font_repertory_func to x_get_font_repertory.
16796
16797 * xterm.h (x_get_font_repertory): Extern it.
16798
16799 * xterm.c (x_produce_glyphs): Use ASCII_CHAR_P, not
16800 SINGLE_BYTE_CHAR_P. Fix the logic of handling non-ASCII char when
16801 it->multibyte_p is zero.
16802 (XTread_socket): Use ASCII_CHAR_P, not SINGLE_BYTE_CHAR_P.
16803 (x_new_fontset): If FONTSETNAME doesn't match any existing
16804 fontsets, create a new one.
16805 (x_get_font_repertory): New function.
16806
168072008-02-01 Kenichi Handa <handa@m17n.org>
16808
16809 * coding.c (Ffind_coding_systems_region_internal): Detect an
16810 ASCII only string correctly.
16811
16812 * lread.c (Fload): Don't load with Qload_force_doc_strings t if
16813 version is 0.
16814
168152008-02-01 Kenichi Handa <handa@m17n.org>
16816
16817 * lread.c: Include "coding.h".
16818 (Qget_emacs_mule_file_char, Qload_force_doc_strings)
16819 (load_each_byte, unread_char): New variables.
16820 (readchar_backlog): Delete.
16821 (readchar): Return a character unless load_each_byte is nonzero.
16822 Handle the case that readcharfun is Qget_emacs_mule_file_char or a
16823 cons. If unread_char is not -1, simply return it.
16824 (unreadchar): Handle the case that readcharfun is
16825 Qget_emacs_mule_file_char or a cons. Set unread_char if necessary.
16826 (read_multibyte): Delete.
16827 (readbyte_for_lambda, readbyte_from_file, readbyte_from_string)
16828 (read_emacs_mule_char): New functions.
16829 (Fload): Even if the file doesn't have the extension ".elc", if
16830 safe_to_load_p returns a positive version number, assume that the
16831 file contains bytecompiled code. If the version is less than 22,
16832 load the file while decoding multibyte sequences by emacs-mule.
16833 (readevalloop): Don't use readchar_backlog.
16834 (Fread): Likewise. Pay attention to the case that STREAM is a cons.
16835 (Fread_from_string): Pay attention to the case that STREAM is a cons.
16836 (read_escape): Delete the arg BYTEREP.
16837 (read1): Set load_each_byte to 1 temporarily while handling
16838 #@NUMBER. Don't call read_multibyte.
16839 (read_vector): Call Fread with a cons. If readcharfun is
16840 Qget_emacs_mule_file_char, decode the read string by emacs-mule.
16841 (read_list): If doc_reference is 2, make the cdr part string as unibyte.
16842 (syms_of_lread): Intern and staticpro Qget_emacs_mule_file_char
16843 and Qload_force_doc_strings.
16844
168452008-02-01 Kenichi Handa <handa@m17n.org>
16846
16847 * xdisp.c (face_before_or_after_it_pos): Call
16848 FETCH_MULTIBYTE_CHAR with byte postion, not char position.
16849
168502008-02-01 Kenichi Handa <handa@m17n.org>
16851
16852 * character.h (TRAILING_CODE_P): New macro.
16853 (MAYBE_UNIFY_CHAR): Adjust for the change of Funify_charset.
16854 (string_char_with_unification): Fix prototype.
16855 (Vscript_alist): Extern it.
16856
16857 * character.c (Vscript_alist): New variable.
16858 (string_char_with_unification, str_as_unibyte)
16859 (string_escape_byte8): Add `const' to local variables.
16860 (syms_of_character): Declare script-alist as a Lisp variable.
16861
16862 * charset.h (Vcharset_ordered_list): Extern it.
16863 (charset_ordered_list_tick): Extern it.
16864 (EMACS_MULE_LEADING_CODE_PRIVATE_11)
16865 (EMACS_MULE_LEADING_CODE_PRIVATE_12)
16866 (EMACS_MULE_LEADING_CODE_PRIVATE_21)
16867 (EMACS_MULE_LEADING_CODE_PRIVATE_22): New macros.
16868 (Funify_charset): Adjust for the change of Funify_charset.
16869
16870 * charset.c (charset_ordered_list_tick): New variable.
16871 (Fdefine_charset_internal): Increment charset_ordered_list_tick.
16872 (Funify_charset): New optional arg DEUNIFY. If it is non-nil,
16873 deunify intead of unify a charset.
16874 (string_xstring_p): Add `const' to local variables.
16875 (find_charsets_in_text): Add `const' to arguments and local variables.
16876 (encode_char): Adjust for the change of Funify_charset. Fix
16877 detecting of invalid code.
16878 (Fset_charset_priority): Increment charset_ordered_list_tick.
16879 (Fmap_charset_chars): Fix handling of default value for FROM_CODE
16880 and TO_CODE.
16881
16882 * coding.c (LEADING_CODE_PRIVATE_11, LEADING_CODE_PRIVATE_12)
16883 (LEADING_CODE_PRIVATE_21, LEADING_CODE_PRIVATE_22): Delete macros.
16884 Changed callers to use EMACS_MULE_LEADING_CODE_PRIVATE_11, etc.
16885 (decode_coding_ccl, consume_chars)
16886 (Ffind_coding_systems_region_internal)
16887 (Fcheck_coding_systems_region): Add `const' to local variables.
16888
16889 * print.c (print_object): Use octal form for printing the
16890 contents of a bool vector.
16891
168922008-02-01 Dave Love <fx@gnu.org>
16893
16894 * lread.c (Fload) <!load_dangerous_libraries>: Don't leak fd.
16895 <version == 20>: Refuse to load.
16896
168972008-02-01 Dave Love <fx@gnu.org>
16898
16899 * fns.c: Move coding.h.
16900 (Qcodeset, Qdays, Qmonths): New.
16901 (concat): Use CHARACTERP instead of INTEGERP.
16902 (Flocale_codeset): Delete.
16903 (Flanginfo): New function.
16904 (syms_of_fns): Change accordingly.
16905
16906 * coding.c (adjust_coding_eol_type): Fix eol_type/eol_seen mixup.
16907
169082008-02-01 Dave Love <fx@gnu.org>
16909
16910 * casetab.c (init_casetab_once, init_casetab_once): Fix
16911 CHAR_TABLE_SET call.
16912
16913 * category.c (Fmodify_category_entry): Fix CATEGORY_MEMBER call.
16914
16915 * character.c (syms_of_character): Fix CHAR_TABLE_SET call.
16916
16917 * charset.c (Fmap_charset_chars): Check args. Convert Lisp types.
16918 (load_charset_map, Fdeclare_equiv_charset, Fencode_char)
16919 (Fset_charset_priority, syms_of_charset): Convert Lisp types.
16920
16921 * charset.h (CHECK_CHARSET_GET_ID): Use XINT on AREF result.
16922
16923 * coding.c (ENCODE_DESIGNATION, decode_eol)
16924 (make_conversion_work_buffer, code_conversion_restore)
16925 (Fdefine_coding_system_internal): Convert Lisp types.
16926 (code_conversion_restore): Use EQ, not ==.
16927 (Fencode_coding_string): Fix code_convert_string call.
16928
16929 * coding.h (code_convert_region): Fix prototype.
16930
16931 * dispextern.h (redraw_frame, redraw_garbaged_frames): Remove.
16932
16933 * fontset.c (fontset_ref, fontset_set, fs_load_font)
16934 (Ffontset_info): Convert Lisp types.
16935
16936 * syntax.h (SYNTAX_ENTRY_INT): Don't use make_number.
16937
16938 * xterm.c (note_mouse_movement): Fix call of window_from_coordinates.
16939
16940 * xdisp.c (display_mode_element): Fix call of Fset_text_properties.
16941
16942 * chartab.c: Include "...h", not <...h> in some cases.
16943
16944 * callproc.c (Fcall_process): Remove unused variables.
16945
169462008-02-01 Dave Love <fx@gnu.org>
16947
16948 * coding.c (Fset_coding_system_priority): Allow null arg list.
16949
169502008-02-01 Dave Love <fx@gnu.org>
16951
16952 * minibuf.c (Fminibuffer_complete_word): Remove unused var.
16953 (Fself_insert_and_exit): Use CHARACTERP.
16954
16955 * callproc.c (Fcall_process): Remove unused vars.
16956
16957 * xterm.c (XTread_socket): Add extra dead keysyms.
16958
16959 * xdisp.c (decode_mode_spec_coding): Use CHARACTERP.
16960
16961 * dispextern.h: Remove prototypes for redraw_frame,
16962 redraw_garbaged_frames.
16963
16964 * cmds.c (Fself_insert_command): Use CHARACTERP.
16965
16966 * chartab.c (make_sub_char_table): Remove unused var.
16967 (Fset_char_table_default, Fmap_char_table): Doc fix.
16968
16969 * keymap.c (access_keymap): Remove generic char code.
16970 (push_key_description): Use CHARACTERP.
16971
169722008-02-01 Dave Love <fx@gnu.org>
16973
16974 * charset.c: Doc fixes.
16975 (Funify_charset): Extra checking.
16976
169772008-02-01 Dave Love <fx@gnu.org>
16978
16979 * lread.c: Remove some unused variables.
16980 (safe_to_load_p): If safe, return the magic number version byte.
16981 (Fload): Maybe use load-with-code-conversion.
16982
169832008-02-01 Kenichi Handa <handa@m17n.org>
16984
16985 * category.c (Fmodify_category_entry): Don't modify the contents
16986 of category_set for characters out of the range. Avoid
16987 unnecessary modification.
16988
16989 * character.h (MAYBE_UNIFY_CHAR): Adjust for the change of
16990 Vchar_unify_table. The default value of the table is now nil.
16991
16992 * character.c (syms_of_character): Setup Vchar_width_table for
16993 eight-bit-control and raw-byte chars.
16994
16995 * charset.h (enum define_charset_arg_index): Delete
16996 charset_arg_parents and add charset_arg_subset and
16997 charset_arg_superset.
16998 (enum charset_attr_index): Delete charset_parents and add
16999 charset_subset and charset_superset.
17000 (enum charset_method): Delete CHARSET_METHOD_INHERIT and add
17001 CHARSET_METHOD_SUBSET and CHARSET_METHOD_SUPERSET.
17002 (CHARSET_ATTR_PARENTS, CHARSET_PARENTS): Delete.
17003 (CHARSET_ATTR_SUBSET, CHARSET_ATTR_SUPERSET, CHARSET_SUBSET)
17004 (CHARSET_SUPERSET): New macros.
17005 (charset_work): Extern it.
17006 (ENCODE_CHAR): Use charset_work.
17007 (CHAR_CHARSET_P): Adjust for the change of encoder format.
17008 (map_charset_chars): Extern it.
17009
17010 * charset.c (load_charset_map): Set the default value of encoder
17011 and deunifier char-tables to nil.
17012 (map_charset_chars): Change argument. Change callers. Use
17013 map_char_table_for_charset instead of map_char_table.
17014 (Fmap_charset_chars): New optional args from_code and to_code.
17015 (Fdefine_charset_internal): Adjust for the change of
17016 `define-charset' (:parents -> :subset or :superset).
17017 (charset_work): New variable.
17018 (encode_char, syms_of_charset): Adjust for the change of
17019 Fdefine_charset_internal.
17020 (Ffind_charset_string): Setup the vector `charsets' correctly.
17021
17022 * chartab.c (sub_char_table_ref_and_range): New arg default. Fix
17023 the previous change.
17024 (char_table_ref_and_range): Adjust for the above change.
17025 (map_sub_char_table_for_charset): New function.
17026 (map_char_table_for_charset): New function.
17027
17028 * keymap.c (describe_vector): Handle a char-table directly here.
17029 (describe_char_table): Delete.
17030
17031 * lisp.h (map_charset_chars): Delete.
17032
170332008-02-01 Dave Love <fx@gnu.org>
17034
17035 * fns.c (count_combining): Comment out (unused).
17036 (Flocale_codeset): New.
17037 (syms_of_fns): Defsubr it.
17038
17039 * config.in (HAVE_PTY_H, HAVE_SIZE_T, HAVE_LANGINFO_CODESET): New.
17040 (size_t): Remove.
17041
170422008-02-01 Dave Love <fx@gnu.org>
17043
17044 * Makefile.in (chartab.o): Depend on charset.h.
17045
170462008-02-01 Kenichi Handa <handa@m17n.org>
17047
17048 * character.c (syms_of_character): Set the default value of
17049 Vprintable_chars to Qnil.
17050
170512008-02-01 Dave Love <fx@gnu.org>
17052
17053 * Makefile.in (lisp, shortlisp): Change indian.elc to indian.el.
17054
170552008-02-01 Kenichi Handa <handa@m17n.org>
17056
17057 * charset.c (load_charset_map): Handle the case that from < to
17058 correctly.
17059
17060 * coding.c (encode_coding_emacs_mule, encode_coding_iso_2022)
17061 (encode_coding_sjis, encode_coding_big5, encode_coding_charset):
17062 Pay attention to raw-8-bit chars.
17063
170642008-02-01 Kenichi Handa <handa@m17n.org>
17065
17066 * Makefile.in (lisp, shortlisp): Change chinese.elc to chinese.el.
17067 It is not bytecompiled now.
17068
17069 * charset.c (charset_jisx0201_roman, charset_jisx0208_1978)
17070 (charset_jisx0208): New variables.
17071 (Fdefine_charset_internal): Setup them if appropriate.
17072 (init_charset_once): Initialize them to -1.
17073
17074 * charset.h (charset_jisx0201_roman, charset_jisx0208_1978)
17075 (charset_jisx0208): Extern them.
17076
17077 * coding.c (CODING_ISO_FLAG_USE_ROMAN): New macro.
17078 (CODING_ISO_FLAG_USE_OLDJIS): New macro.
17079 (CODING_ISO_FLAG_FULL_SUPPORT): Change macro definition.
17080 (setup_iso_safe_charsets): Fix arguments to Fassq.
17081 (DECODE_DESIGNATION, ENCODE_ISO_CHARACTER_DIMENSION1)
17082 (ENCODE_ISO_CHARACTER_DIMENSION2): Pay attention to
17083 CODING_ISO_FLAG_USE_ROMAN and CODING_ISO_FLAG_USE_OLDJIS.
17084 (encode_coding_iso_2022): Change the 1st arg to
17085 ENCODE_ISO_CHARACTER to a variable.
17086
170872008-02-01 Kenichi Handa <handa@m17n.org>
17088
17089 * charset.h (enum define_charset_arg_index): New enums
17090 charset_arg_min_code and charset_arg_max_code.
17091 (struct charset): New member char_index_offset.
17092
17093 * charset.c (CODE_POINT_TO_INDEX, INDEX_TO_CODE_POINT):
17094 Take charset->char_index_offset into account.
17095 (Fdefine_charset_internal): Handle args[charset_arg_min_code] and
17096 args[charset_arg_max_code]. Setup charset.char_index_offset.
17097 (syms_of_charset): Fix args to Fdefine_charset_internal.
17098
170992008-02-01 Dave Love <fx@gnu.org>
17100
17101 * coding.c (decode_coding_utf_8): Reject overlong sequences.
17102
171032008-02-01 Dave Love <fx@gnu.org>
17104
17105 * coding.c: Doc fixes.
17106 (Fcoding_system_aliases): Fix return value.
17107 (Qmac): Remove (duplicated) definition.
17108
171092008-02-01 Dave Love <fx@gnu.org>
17110
362654a6
JB
17111 * charset.c (Fcharset_priority_list, Fset_charset_priority):
17112 New functions.
aac0c6e3
MR
17113
17114 * character.c (Fstring): Doc fix.
17115
17116 * charset.c (Fdefine_charset_alias): Update Vcharset_list.
17117
362654a6 17118 * fontset.c (Ffontset_info): Doc fix. Return charset names, not ids.
aac0c6e3
MR
17119 (font-encoding-alist): Doc fix.
17120
171212008-02-01 Dave Love <fx@gnu.org>
17122
17123 * term.c (costs_set): Declare static, non-initialized for pcc.
17124 (encode_terminal_code): Remove unused var.
17125
17126 * keyboard.c (kbd_buffer_store_event): Fix interrupt_signal decl
17127 for K&R.
17128
17129 * xterm.c (xlwmenu_window_p): Fix prototype for K&R.
17130
17131 * coding.c (setup_iso_safe_charsets): Fix arg decl for K&R.
17132 (suffixes): Move out of make_subsidiaries for K&R.
17133
17134 * charset.c (map_charset_chars): Fix c_function declaration for K&R.
17135
17136 * lisp.h (DEFUN) [!PROTOTYPES]: Remove spurious `args'.
17137
171382008-02-01 Dave Love <fx@gnu.org>
17139
17140 * data.c (Fchar_or_string_p): Doc fix. Use CHARACTERP.
17141
17142 * category.c (Fmodify_category_entry): Doc fix. Remove unused vars.
17143
171442008-02-01 Yong Lu <lyongu@asia-infonet.com>
17145
17146 * charset.c (Fdefine_charset_internal): Fix argument to bzero.
17147
17148 * coding.c (decode_coding_charset): Workaround for the bug of GCC 2.96.
17149
171502008-02-01 Kenichi Handa <handa@m17n.org>
17151
17152 * Makefile.in (lisp, shortlisp): Change cyrillic.elc to cyrillic.el,
17153 vietnamese.elc to vietnamese.el. They are not bytecompiled now.
17154
171552008-02-01 Kenichi Handa <handa@m17n.org>
17156
17157 * coding.c (decode_coding_charset): Adjust for the change of
17158 Fdefine_coding_system_internal.
17159 (Fdefine_coding_system_internal): For a coding system of
17160 `charset' type, store a list of charset IDs in
17161 `charset_attr_charset_valids' element of coding attributes.
17162
171632008-02-01 Kenichi Handa <handa@m17n.org>
17164
17165 * coding.c (ONE_MORE_BYTE_NO_CHECK): Increment consumed_chars.
17166 (emacs_mule_char): New arg src. Delete arg `composition'. Change
17167 caller. Handle 2-byte and 3-byte charsets correctly.
17168 (DECODE_EMACS_MULE_COMPOSITION_RULE_20): Rename from
17169 DECODE_EMACS_MULE_COMPOSITION_RULE. Change caller.
17170 (DECODE_EMACS_MULE_COMPOSITION_RULE_21): New macro.
17171 (DECODE_EMACS_MULE_21_COMPOSITION): Call
17172 DECODE_EMACS_MULE_COMPOSITION_RULE_21. Produce correct annotation
17173 sequence.
17174 (decode_coding_emacs_mule): Handle composition correctly. Rewind
17175 `src' and `consumed_chars' correctly before calling emacs_mule_char.
17176 (DECODE_COMPOSITION_START): Correctly handle the case of altchar
17177 and alt&rule composition.
17178 (decode_coding_iso_2022): Handle composition correctly.
17179 (init_coding_once): Setup emacs_mule_bytes for private charsets.
17180
17181 * charset.c (Fdefine_charset_internal): Fix bug for the case of
17182 re-defining a charset. If the charset has :emacs-mule-id, setup
17183 emacs_mule_bytes.
17184 (Fmake_char): If CODE1 is nil, use the minimum code of the charset.
17185
171862008-02-01 Kenichi Handa <handa@m17n.org>
17187
17188 * coding.c (encode_coding_iso_2022, encode_coding_sjis)
17189 (encode_coding_big5, encode_coding_charset): If coding requires safe
17190 encoding, produce a character specified by
17191 CODING_INHIBIT_CHARACTER_SUBSTITUTION.
17192
171932008-02-01 Dave Love <fx@gnu.org>
17194
17195 * xterm.c (XSetIMValues): Declare.
17196
17197 * process.c: Conditionally include sys/wait.h, pty.h.
17198
17199 * print.c (print_object): Fix print format for 64-bit systems.
17200
17201 * keyboard.c (modify_event_symbol): Fix print format for 64-bit systems.
17202
17203 * buffer.c (emacs_strerror): Declare.
17204
17205 * fontset.c (Fclear_face_cache): Declare.
17206 (accumulate_font_info): Comment-out (unused).
17207 (face_for_char, Fset_fontset_font, Ffontset_info): Remove unused
17208 variables.
17209
17210 * character.h (string_escape_byte8): Declare.
17211
17212 * charset.c (load_charset_map, load_charset_map_from_file): Remove
17213 unused vars.
17214 (Fdefine_charset_internal, Fsplit_char, syms_of_charset)
17215 (Fmap_charset_chars): Doc fix.
17216
17217 * coding.c (Vchar_coding_system_table, Qchar_coding_system): Remove.
17218 (Fset_coding_system_priority, Fset_coding_system_priority)
17219 (Fdefine_coding_system_internal): Doc fix.
17220
172212008-02-01 Dave Love <fx@gnu.org>
17222
17223 * s/osf5-0.h (C_SWITCH_SYSTEM) [!__GNUC__]: Remove -nointrinsics.
17224
172252008-02-01 Kenichi Handa <handa@m17n.org>
17226
17227 * character.c (string_escape_byte8): Make multibyte string with
17228 correct size.
17229
17230 * charset.c (Fmake_char): Delete unnecessary code.
17231
172322008-02-01 Kenichi Handa <handa@m17n.org>
17233
17234 * xfns.c (x_encode_text): Allocate coding.destination here, and
17235 call encode_coding_object with dst_object Qnil.
17236
17237 * buffer.c (Fset_buffer_multibyte): Convert 8-bit bytes to
17238 multibyte form correctly.
17239
17240 * fontset.c (fs_load_font): Check fontp->full_name (not fontname)
17241 against Vfont_encoding_alist.
17242
17243 * coding.c (Fdecode_sjis_char): Fix typo (0x7F->0xFF). Fix the
17244 handling of charset list.
17245 (encode_coding_iso_2022): Setup coding->safe_charsets in advance.
17246 (decode_coding_object): Move point to coding->dst_pos before
17247 calling post-read-conversion function.
17248 (encode_coding_object): Give correct arguments to
17249 pre-write-conversion. Ignore the return value of
17250 pre-write-conversion function. Pay attention to the case that
17251 pre-write-conversion changes the current buffer. If dst_object is
17252 Qt, even if coding->src_bytes is zero, allocate at least one byte
17253 to coding->destination.
17254
17255 * coding.h (JIS_TO_SJIS): Fix typo (j1->s1, j2->s2).
17256
17257 * charset.c (Fmake_char): Make it more backward compatible.
17258 (Fmap_charset_chars): Fix docstring.
17259
172602008-02-01 Dave Love <fx@gnu.org>
17261
17262 * coding.c: Doc fixes.
17263 (Fdefine_coding_system_alias): Use names, not symbols, in
17264 coding-system-alist.
17265
172662008-02-01 Kenichi Handa <handa@m17n.org>
17267
17268 * fontset.c (free_realized_fontsets): Call Fclear_face_cache instead
17269 of calling free_realized_face.
17270
172712008-02-01 Yong Lu <lyongu@asia-infonet.com>
17272
17273 * charset.c (read_hex): Don't treat SPC as a comment starter.
17274 (decode_char): If CODE_POINT_TO_INDEX returns -1, always return -1.
17275 (Fdecode_char): Fix typo.
17276
172772008-02-01 Kenichi Handa <handa@m17n.org>
17278
17279 * charset.h (struct charset): New member `code_space_mask'.
17280
17281 * coding.c (coding_set_source): Delete the local variable beg_byte.
17282 (encode_coding_charset, Fdefine_coding_system_internal):
17283 Delete the local variable charset.
17284 (Fdefine_coding_system_internal): Setup
17285 attrs[coding_attr_charset_valids] correctly.
17286
17287 * charset.c (CODE_POINT_TO_INDEX): Utilize `code_space_mask'
17288 member to check if CODE is valid or not.
17289 (Fdefine_charset_internal): Initialize `code_space_mask' member.
17290 (encode_char): Before calling CODE_POINT_TO_INDEX, check if CODE
17291 is within the range of charset->min_code and carset->max_code.
17292
172932008-02-01 Dave Love <fx@gnu.org>
17294
17295 * syntax.h (syntax_temp) [!__GNUC__]: Declare.
17296
17297 * dispextern.h (generate_ascii_font): Fix return type.
17298
17299 * xfaces.c (generate_ascii_font): Fix arg declaration.
17300
17301 * coding.c (coding_inherit_eol_type)
17302 (Fset_terminal_coding_system_internal)
17303 (Fset_safe_terminal_coding_system_internal): Fix arg declarations.
17304
173052008-02-01 Kenichi Handa <handa@m17n.org>
17306
17307 * coding.c (decode_coding_charset, encode_coding_charset): Handle
17308 multiple charsets correctly.
17309
173102008-02-01 Kenichi Handa <handa@m17n.org>
17311
17312 * search.c (boyer_moore): Fix handling of multibyte character
17313 translation.
17314
17315 * xdisp.c (display_mode_element): When the variable `elt' is
17316 changed, update `this' and `lisp_string'.
17317
173182008-02-01 Kenichi Handa <handa@m17n.org>
17319
17320 * buffer.c (Fset_buffer_multibyte): Fix 8-bit char handling.
17321
17322 * callproc.c (Fcall_process): Be sure to give the current buffer
17323 to decode_coding_c_string. Update PT and PT_BYTE after the insertion.
17324
17325 * charset.c (struct charset_map_entries): New struct.
17326 (load_charset_map): Rename from parse_charset_map. New args
17327 entries and n_entries. Change caller.
17328 (load_charset_map_from_file): Rename from load_charset_map.
17329 Change caller. New arg control_flag. Call load_charset_map at
17330 the tail.
17331 (load_charset_map_from_vector): New function.
17332 (Fdefine_charset_internal): Setup charset.compact_codes_p.
17333 (encode_char): If the charset is compact, change a character index
17334 to a code point.
17335
17336 * coding.c (coding_alloc_by_making_gap): Check the case that the
17337 source and destination are the same correctly.
17338 (decode_coding_raw_text): Set coding->consumed_char and
17339 coding->consumed to 0.
17340 (produce_chars): If coding->chars_at_source is nonzero, update
17341 coding->consumed_char and coding->consumed before calling
17342 alloc_destination.
17343 (Fdefine_coding_system_alias): Register ALIAS in
17344 Vcoding_system_alist.
17345 (syms_of_coding): Define `no-conversion' coding system at the tail.
17346
17347 * fileio.c (Finsert_file_contents): Set coding_system instead of
17348 val. If the current buffer is multibyte, always call
17349 decode_coding_gap.
17350
17351 * xfaces.c (try_font_list): Give higher priority to fontset's
17352 family than face's family.
17353
173542008-02-01 Kenichi Handa <handa@m17n.org>
17355
17356 * callproc.c (Fcall_process): Be sure to give the current buffer
17357 to decode_coding_c_string.
17358
17359 * xfaces.c (try_font_list): Give a family specified in a fontset
17360 higher priority than a family specified in a face.
17361
173622008-02-01 Kenichi Handa <handa@m17n.org>
17363
17364 * fileio.c (Finsert_file_contents): Fix calculation of `inserted'.
17365 Fix arguments to insert_from_buffer.
17366
17367 * xdisp.c (display_mode_element): Fix calculation of `bytepos'.
17368
173692008-02-01 Kenichi Handa <handa@m17n.org>
17370
17371 * coding.c (produce_chars): Set the variable `multibytep' correctly.
17372 (decode_coding_gap): Set coding->dst_multibyte correctly.
17373
173742008-02-01 Kenichi Handa <handa@m17n.org>
17375
17376 * coding.c (encode_coding_utf_8): Initialize produced_chars to 0.
17377 (decode_coding_utf_16): Fix converting high and low bytes to code-point.
17378 (encode_coding_utf_16): Substitute coding->default_char for
17379 non-Unicode characters.
17380 (decode_coding): Don't call record_insert here.
17381 (setup_coding_system): Initialize `surrogate' of
17382 coding->spec.utf_16 to 0.
17383 (EMIT_ONE_BYTE): Fix for multibyte case.
17384
17385 * insdel.c (insert_from_gap): Call record_insert.
17386
173872008-02-01 Kenichi Handa <handa@m17n.org>
17388
17389 * casefiddle.c (casify_region): Fix multibyte case.
17390
17391 * character.c (c_string_width): Add return type `int'.
17392 (char_string_with_unification): Delete arg ADVANCED.
17393
17394 * character.h (CHAR_VALID_P): Don't call CHARACTERP.
17395 (CHAR_STRING): Adjust for the change of char_string_with_unification.
17396 (CHAR_STRING_ADVANCE): Make it do-while statement.
17397
17398 * chartab.c (sub_char_table_set_range): Optimize for the case
17399 DEPTH == 3. Add workaround code for a GCC optimization bug.
17400
17401 * charset.c (parse_charset_map): Remove an unused variable.
17402
17403 * coding.c: Delete unused variables.
17404
17405 * fileio.c (Finsert_file_contents): Set coding_system to Qnil
17406 earlier. If inserted is zero and the coding system doesn't
17407 require flushing, don't call decode_coding_gap.
17408
17409 * syntax.h (SET_RAW_SYNTAX_ENTRY): Don't call make_number.
17410
174112008-02-01 Kenichi Handa <handa@m17n.org>
17412
17413 The following changes are for using Unicode as an internal
17414 character model, and use UTF-8 format for buffer/string
17415 representation.
17416
17417 * .gdbinit (xchartable): Adjust for the change of char table structure.
17418 (xsubchartable, xcoding, xcharset, xcurbuf): New commands.
17419
17420 * Makefile.in (obj): Add character.o and chartab.o.
17421 (lisp, shortlisp): Remove utf-8.elc.
17422 (*.o): For many files, change dependency on charset.h to
17423 character.h, and add dependency on character.h.
17424 (character.o, chartab.o): New targets.
17425
17426 * abbrev.c, bytecode.c, casefiddle.c, cmds.c, dispnew.c, doc.c:
17427 * doprnt.c, dosfns.c, frame.c, marker.c, minibuf.c, msdos.c:
17428 * w16select.c, w32bdf.c, w32console.c: Include "character.h" instead
17429 of "charset.h".
17430
17431 * dired.c, filelock.c: Include "character.h".
17432
17433 * alloc.c: Include "character.h" instead of "charset.h".
17434 (Fmake_char_table, make_sub_char_table): Move to chartab.c.
17435 (syms_of_alloc): Remove defsubr for Smake_char_table.
17436
17437 * buffer.c: Include "character.h" instead of "charset.h", don't
17438 include "coding.h".
17439 (Fset_buffer_multibyte): Adjust for UTF-8.
17440
17441 * buffer.h: EXFUN Fbuffer_live_p.
17442
17443 * callproc.c: Include "character.h" instead of "charset.h".
17444 (Fcall_process): Big change for the new code-conversion APIs.
17445
17446 * casetab.c: Include "character.h" instead of "charset.h".
17447 (set_canon, set_identity, shuffle): Adjust for the new
17448 map_char_table spec.
17449 (init_casetab_once): Call CHAR_TABLE_SET instead of directly
17450 accessing the char table structure.
17451
17452 * chartab.c: New file that implements char table.
17453
17454 * category.c: Include "character.h".
17455 (copy_category_entry): New function.
17456 (copy_category_table): Call map_char_table and copy_category_entry.
17457 (Fmake_category_table): Initialize all top-level slots.
17458 (char_category_set): New function.
17459 (modify_lower_category_set): Delete.
17460 (Fmodify_category_entry): Call char_table_ref_and_range.
17461
17462 * category.h (CATEGORY_SET): Just call char_category_set.
17463
17464 * ccl.c: Include "character.h".
17465 (Qccl, Qcclp): New variables.
17466 (CCL_WRITE_CHAR): Alway treat the arg CH as a character even if
17467 it's less than 256.
17468 (CCL_WRITE_MULTIBYTE_CHAR): Delete.
17469 (CCL_WRITE_STRING, CCL_READ_CHAR): Adjust for the change of SRC
17470 and DST type.
17471 (ccl_driver): Change types of argument, adjust code accordingly.
17472 (Fccl_execute, Fccl_execute_on_string): Adjust for the change of
17473 ccl_driver.
17474 (syms_of_ccl): Intern and staticpro Qccl and Qcclp.
17475
17476 * ccl.h (struct ccl_program): Delete members eol_type and multibyte.
17477 New members src_multibyte, dst_multibyte, consumed, and produced.
17478 (struct ccl_spec): Delete members decoder and encoder. New member ccl.
17479 (CODING_SPEC_CCL_PROGRAM): New macro.
17480 (ccl_driver): Update prototype.
17481 (Qccl, Qcclp, Fccl_program_p): Extern them.
17482 (CHECK_CCL_PROGRAM): New macro.
17483
17484 * character.c, character.h, chartab.c: New files.
17485
17486 * charset.c: Mostly re-written. Move character and multibyte sequence
17487 handling codes to character.c.
17488
17489 * charset.h: Mostly re-written. Move character and multibyte sequence
17490 handling codes to character.h.
17491
17492 * coding.c, coding.h: Mostly re-written.
17493
17494 * composite.c: Include "character.h" instead of "charset.h".
17495 (CHAR_WIDTH): Move to character.h.
17496 (HASH_KEY, HASH_VALUE): Delete.
17497
17498 * composite.h (enum composition_method): Change order of enumeration
17499 symbols.
17500
17501 * data.c: Include "character.h" instead of "charset.h".
17502 (Faref): Call CHAR_TABLE_REF for a char table.
17503 (Faset): Call CHAR_TABLE_SET for a char table.
17504
17505 * dispextern.h (free_realized_face, check_face_attribytes)
17506 (generate_ascii_font): Extern them.
17507 (free_realized_multibyte_face): Delete extern.
17508
17509 * disptab.h (DISP_CHAR_VECTOR): Adjust for the change of char
17510 table structure.
17511
17512 * editfns.c: Include "character.h" instead of "charset.h".
17513 (Fchar_to_string): Always call CHAR_STRING.
17514
17515 * emacs.c (main): Call init_charset_once, init_charset,
17516 syms_of_chartab, and syms_of_character.
17517
17518 * fileio.c: Include "character.h" instead of "charset.h".
17519 (Finsert_file_contents): Big change for the new code-conversion API.
17520 (choose_write_coding_system, Fwrite_region): Likewise.
17521 (build_annotations_2): Delete.
17522 (e_write): Big change for the new code-conversion API.
17523
17524 * fns.c: Include "character.h" instead of "charset.h".
17525 (copy_sub_char_table): Move to chartab.c.
17526 (Fcopy_sequence): Call copy_char_table for a char table.
17527 (concat): Delete codes calling count_multibyte.
17528 (string_char_to_byte, string_byte_to_char): Adjust for the new
17529 multibyte form.
17530 (internal_equal): Adjust for the change of char table structure.
17531 (Fchar_table_subtype, Fchar_table_parent, Fset_char_table_parent)
17532 (Fchar_table_extra_slot, Fset_char_table_extra_slot)
17533 (Fchar_table_range, Fset_char_table_range, Fset_char_table_default)
17534 (char_table_translate, optimize_sub_char_table)
17535 (Foptimize_char_table, map_char_table, Fmap_char_table): Move to
17536 chartab.c.
17537 (char_table_ref_and_index): Delete.
17538 (HASH_KEY, HASH_VALUE): Move to lisp.h.
17539 (Fmd5): Call preferred_coding_system instead of accessing
17540 Vcoding_category_list. Adjust for the new code-conversion API.
17541 (syms_of_fns): Move defsubr for char table related functions to
17542 chartab.c.
17543
17544 * fontset.c: Mostly re-written.
17545
17546 * fontset.h (struct font_info): Change type of the member encoding_type.
17547 (enum FONT_SPEC_INDEX): New enum.
17548 (fontset_font_pattern, fs_load_font): Update prototype.
17549 (FS_LOAD_FONT): Adjust for the change of fs_load_font.
17550
17551 * indent.c: Include "character.h" instead of "charset.h".
17552 (MULTIBYTE_BYTES_WIDTH): Call CHAR_WIDTH instead of WIDTH_BY_CHAR_HEAD.
17553
17554 * insdel.c: Include "character.h" instead of "charset.h".
17555 (copy_text): Don't refer to Vnonascii_translation_table.
17556 (insert_from_gap): New function.
17557
17558 * keyboard.c: Include "character.h" instead of "charset.h".
17559 (command_loop_1): Never call direct_output_forward_char before
17560 a non-ASCII character.
17561 (read_char): If Vkeyboard_translate_table is a char table, always
17562 translate a character.
17563
17564 * keymap.c: Include "character.h".
17565 (store_in_keymap): Handle the case that IDX is a cons.
17566 (Fdefine_key): Handle the case that KEY is a cons and the car part
17567 is also a cons (range).
17568 (push_key_description): Adjust for the new character code.
17569 (describe_vector): Call describe_char_table for a char table.
17570 (describe_char_table): New function.
17571
17572 * keymap.h (describe_char_table): Extern it.
17573
17574 * lisp.h (enum pvec_type): New member PVEC_SUB_CHAR_TABLE.
17575 (XSUB_CHAR_TABLE, XSETSUB_CHAR_TABLE): New macros.
17576 (CHAR_TABLE_ORDINARY_SLOTS, CHAR_TABLE_SINGLE_BYTE_SLOTS)
17577 (SUB_CHAR_TABLE_ORDINARY_SLOTS, SUB_CHAR_TABLE_STANDARD_SLOTS):
17578 Delete.
17579 (CHAR_TABLE_REF, CHAR_TABLE_SET): Adjust for the new char table
17580 structure.
17581 (CHAR_TABLE_TRANSLATE): Just call char_table_translate.
17582 (CHARTAB_SIZE_BITS_0, CHARTAB_SIZE_BITS_1, CHARTAB_SIZE_BITS_2)
17583 (CHARTAB_SIZE_BITS_3): New macros.
17584 (chartab_size): Extern it.
17585 (struct Lisp_Char_Table): Re-design.
17586 (struct Lisp_Sub_Char_Table): New structure.
17587 (HASH_KEY, HASH_VALUE): Move from fns.c.
17588 (CHARACTERBITS): Define as 22.
17589 (GLYPH_MASK_FACE, GLYPH_MASK_CHAR): Adjust for the above change.
17590 (SUB_CHAR_TABLE_P): Check PVEC_CHAR_TABLE.
17591 (GC_SUB_CHAR_TABLE_P): New macro.
17592 (Fencode_coding_string, Fdecode_coding_string): Update EXFUN.
17593 (code_convert_string_norecord): Deleted extern.
17594 (init_character_once, syms_of_character, init_charset)
17595 (syms_of_composite, Qeq, Fmakehash, insert_from_gap): Extern them.
17596
17597 * lread.c: Include "character.h".
17598 (read_multibyte): New arg NBYTES.
17599 (read_escape): Change the meaning of returned *BYTEREP.
17600 (to_multibyte): Delete.
17601 (read1): Adjust the handling of char table and string.
17602
17603 * print.c: Include "character.h" instead of "charset.h".
17604 (print_string): Convert 8-bit raw bytes to octal form by
17605 string_escape_byte8.
17606 (print_object): Adjust for the new multibyte form. Print 8-bit
17607 raw bytes always in octal form. Handle sub char table correctly.
17608
17609 * process.c: Include "character.h" instead of "charset.h".
17610 (read_process_output, send_process): Adjust for the new
17611 code-conversion API.
17612
17613 * puresize.h (BASE_PURESIZE): Increase.
17614
17615 * regex.c: Include "character.h" instead of "charset.h".
17616 (BYTE8_TO_CHAR, CHAR_BYTE8_P) [not emacs]: New dummy macros.
17617 (regex_compile): Accept a range whose starting and ending
17618 character have different leading bytes.
17619 (analyse_first): Adjust for the above change.
17620
17621 * search.c: Include "character.h" instead of "charset.h".
17622 (search_buffer, boyer_moore): Adjust for the new multibyte form.
17623 (Freplace_match): Adjust for the change of multibyte_char_to_unibyte.
17624
17625 * syntax.c: Include "character.h" instead of "charset.h".
17626 (syntax_parent_lookup): Delete.
17627 (Fmodify_syntax_entry): Accept a cons as CHAR.
17628 (skip_chars): Adjust for the new multibyte form.
17629 (init_syntax_once): Call char_table_set_range instead of directly
17630 accessing the structure of a char table.
17631
17632 * syntax.h (SET_RAW_SYNTAX_ENTRY): Call CHAR_TABLE_SET.
17633 (SYNTAX_ENTRY_FOLLOW_PARENT): Delete macro.
17634 (SET_RAW_SYNTAX_ENTRY_RANGE): New macro.
17635 (SYNTAX_ENTRY_INT): Call CHAR_TABLE_REF.
17636
17637 * term.c: Include "buffer.h" and "character.h".
17638 (encode_terminal_code, write_glyphs): Adjust for the new
17639 code-conversion API.
17640 (produce_glyphs): Call CHAR_WIDTH instead of CHARSET_WIDTH.
17641
17642 * w32term.c (x_new_font): Adjust for the change of FS_LOAD_FONT.
17643
17644 * xdisp.c: Include "character.h".
17645 (get_next_display_element): Adjust for the new multibyte form.
17646 (disp_char_vector): Adjust for the new char table structure.
17647 (decode_mode_spec_coding): Adjust for the new structure of
17648 coding system.
17649 (decode_mode_spec): Adjust for the new code-conversion API.
17650
17651 * xfaces.c: Include "character.h" instead of "charset.h".
17652 (load_face_font): Adjust for the change of choose_face_font and
17653 FS_LOAD_FONT.
17654 (generate_ascii_font): New function.
17655 (set_lface_from_font_name): Adjust for the change of FS_LOAD_FONT.
17656 (set_font_frame_param): Adjust for the change of choose_face_font.
17657 (free_realized_face): Make it public.
17658 (free_realized_faces_for_fontset): Rename from
17659 free_realized_multibyte_face. Free also faces realized for ASCII.
17660 (choose_face_font): Change arguments. Adjust for the change of
17661 fontset_font_pattern and FS_LOAD_FONT.
17662
17663 * xfns.c: Include "character.h".
17664 (x_encode_text): Adjust for the new code-conversion API.
17665
17666 * xselect.c: Don't include "charset.h".
17667 (selection_data_to_lisp_data): Adjust for the new code conversion API.
17668
17669 * xterm.c: Include "character.h".
17670 (x_encode_char): New argument CHARSET. Change caller.
17671 (x_get_char_face_and_encoding, x_get_glyph_face_and_encoding):
17672 Call ENCODE_CHAR instead of SPLIT_CHAR.
17673 (x_produce_glyphs): Don't check Vnonascii_translation_table Call
17674 CHAR_WIDTH instead of CHARSET_WIDTH.
17675 (XTread_socket): Adjust for the new code-conversion API.
17676 (x_new_font): Adjust for the change of FS_LOAD_FONT.
17677 (x_load_font): Adjust for the change of struct font.
17678
176792008-02-01 Stefan Monnier <monnier@iro.umontreal.ca>
17680
17681 * xfaces.c (face_at_buffer_position): Remove unused vars.
17682
176832008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
17684
17685 * ccl.c (CCL_WRITE_CHAR, CCL_WRITE_MULTIBYTE_CHAR):
17686 Fix overflow checking.
17687
176882008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
17689
17690 * ccl.c (CCL_WRITE_CHAR, CCL_WRITE_MULTIBYTE_CHAR, ccl_driver):
17691 Cancel previous change.
17692
176932008-01-31 Kenichi Handa <handa@ni.aist.go.jp>
17694
17695 * ccl.c (CCL_WRITE_CHAR): Increment extra_bytes only when
17696 ccl->eight_bit_control. Fix check for buffer overflow.
17697 (CCL_WRITE_MULTIBYTE_CHAR): Fix check for buffer overflow.
17698 (ccl_driver): Initialize extra_bytes to 0.
17699
177002008-01-31 Kenichi Handa <handa@ni.aist.go.jp>
17701
17702 * keyboard.c (make_ctrl_char): If C is a multibyte character, just
17703 return it ORed with ctrl_modifier.
17704
177052008-01-29 Miles Bader <miles@gnu.org>
17706
17707 * macterm.c (XTset_vertical_scroll_bar): Fix merge mistake.
17708
177092008-01-28 Jason Rumney <jasonr@gnu.org>
17710
17711 * w32.c (stat): Don't double check for networked drive.
17712
177132008-01-28 Stefan Monnier <monnier@iro.umontreal.ca>
17714
17715 * window.c (run_window_configuration_change_hook): New function.
17716 Code extracted from set_window_buffer. Set the selected frame.
17717 (set_window_buffer): Use it.
17718 * window.h (run_window_configuration_change_hook): Declare.
17719 * dispnew.c (change_frame_size_1): Use it instead of set-window-buffer.
17720
17721 * keyboard.c (read_char): Yet another int/Lisp_Object mixup (YAILOM).
17722
177232008-01-27 Dan Nicolaescu <dann@ics.uci.edu>
17724
17725 * Makefile.in: Remove references to unused macros.
17726
177272008-01-26 Eli Zaretskii <eliz@gnu.org>
17728
17729 * w32.c (g_b_init_get_sid_sub_authority)
17730 (g_b_init_get_sid_sub_authority_count): New static variables.
17731 (GetSidSubAuthority_Proc, GetSidSubAuthorityCount_Proc): New typedefs.
17732 (get_sid_sub_authority, get_sid_sub_authority_count): New functions.
17733 (init_user_info): Use them to retrieve uid and gid.
17734 Use 500/513, the Windows defaults, as Administrator's uid/gid.
17735 (fstat): Use pw_uid and pw_gid from the_passwd structure for
17736 st_uid and st_gid of the file.
17737
177382008-01-26 Jason Rumney <jasonr@gnu.org>
17739
17740 * w32.c (logon_network_drive): New function.
17741 (stat): Use it.
17742
177432008-01-26 Chong Yidong <cyd@stupidchicken.com>
17744
17745 * xdisp.c (pos_visible_p): Handle the case where charpos falls on
17746 invisible text covered with an ellipsis.
17747
177482008-01-25 Richard Stallman <rms@gnu.org>
17749
17750 * xdisp.c (redisplay_window): Run Qwindow_text_change_functions and
17751 jump back to beginning. Move some other initializations after that.
17752 (Qwindow_text_change_functions, Vwindow_text_change_functions):
17753 New variables.
17754 (syms_of_xdisp): Init them.
17755
17756 * keyboard.c (read_char): Restore echo_message_buffer after redisplay.
17757
17758 * buffer.c (reset_buffer_local_variables):
17759 Implement `permanent-local-hook'.
17760 (Qpermanent_local_hook): New variable.
17761 (syms_of_buffer): Init and staticpro it.
17762
177632008-01-25 Michael Albinus <michael.albinus@gmx.de>
17764
17765 * dbusbind.c (xd_retrieve_arg): Pacify GCC on x86_64 GNU/Linux.
17766
177672008-01-25 Thien-Thi Nguyen <ttn@gnuvola.org>
17768
17769 * fns.c (Fclrhash): Return TABLE.
17770
177712008-01-23 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
17772
17773 * macterm.c (x_scroll_bar_create): Initialize bar->redraw_needed_p.
17774 (XTset_vertical_scroll_bar): Redraw scroll bar if bar->redraw_needed_p
17775 is set even without positional changes.
17776 (x_scroll_bar_clear): Set bar->redraw_needed_p.
17777
17778 * macterm.h (struct scroll_bar): New member `redraw_needed_p'.
17779
177802008-01-23 Jason Rumney <jasonr@gnu.org>
17781
17782 * xterm.c (handle_one_xevent): Revert to counting chars not bytes.
17783
17784 * w32term.c (w32_read_socket) <WM_CHAR>: Decode characters outside
17785 the unicode range available in MULE by locale-coding-system.
17786 Improve dbcs lead byte detection. Set event timestamp and modifiers
17787 earlier.
17788
177892008-01-23 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
17790
17791 * mac.c (mac_emacs_pid) [MAC_OSX]: New variable.
17792 [MAC_OSX] (init_mac_osx_environment): Initialize it.
17793 [MAC_OSX] (mac_try_close_socket) [SELECT_USE_CFSOCKET]: Return 0
17794 when used on child processes.
17795
177962008-01-21 Michael Albinus <michael.albinus@gmx.de>
17797
17798 * dbusbind.c (Fdbus_method_return_internal): Rename from
17799 Fdbus_method_return.
17800 (Fdbus_unregister_object): Move to dbus.el.
17801 (Fdbus_call_method, Fdbus_method_return_internal)
17802 (Fdbus_send_signal): Improve debug messages.
17803
178042008-01-20 Martin Rudalics <rudalics@gmx.at>
17805
17806 * undo.c (undo_inhibit_record_point): New variable.
17807 (syms_of_undo): Initialize it.
17808 (record_point): Don't record point when undo_inhibit_record_point
17809 is set.
17810
178112008-01-19 Stefan Monnier <monnier@iro.umontreal.ca>
17812
17813 * process.c (list_processes_1): Don't use SCHARS on a nil buffer name.
17814
17815 * xdisp.c (Qauto_hscroll_mode): New var.
17816 (syms_of_xdisp): Initialize it.
17817 (hscroll_window_tree): Use it to lookup `auto-hscroll-mode' in each
17818 window's buffer.
17819 (hscroll_windows): Don't check automatic_hscrolling_p here.
17820
17821 * window.c (set_window_buffer): Don't unnecessarily reset hscroll and
17822 vscroll if we're setting window-buffer to the value it already has.
17823
178242008-01-18 Dan Nicolaescu <dann@ics.uci.edu>
17825
17826 * m/intel386.h: Remove references to XENIX.
17827
178282008-01-17 Andreas Schwab <schwab@suse.de>
17829
17830 * m/amdx86-64.h (START_FILES, LIB_STANDARD): Use HAVE_LIB64_DIR
17831 instead of HAVE_X86_64_LIB64_DIR.
17832 * m/ibms390x.h (START_FILES, LIB_STANDARD): Likewise.
17833
178342008-01-17 Glenn Morris <rgm@gnu.org>
17835
17836 * m/ibms390x.h (START_FILES, LIB_STANDARD): Adjust value according
17837 to HAVE_X86_64_LIB64_DIR.
17838
178392008-01-16 Dan Nicolaescu <dann@ics.uci.edu>
17840
17841 * s/irix3-3.h:
17842 * s/irix4-0.h:
17843 * s/386-ix.h:
17844 * s/domain.h:
17845 * s/hpux9-x11r4.h:
17846 * s/hpux9shxr4.h: Remove files for systems no longer supported.
17847
17848 * sysdep.c: Remove code containing references to symbols defined
17849 by unsupported systems.
17850
178512008-01-16 Glenn Morris <rgm@gnu.org>
17852
17853 * coding.c (select-safe-coding-system-function): Doc fix.
17854
178552008-01-15 Glenn Morris <rgm@gnu.org>
17856
17857 * config.in: Revert 2008-01-13 change: this is a generated file.
17858
178592008-01-13 Tom Tromey <tromey@redhat.com>
17860
17861 * lisp.h: Fix typo.
17862
178632008-01-13 Dan Nicolaescu <dann@ics.uci.edu>
17864
17865 * m/sequent-ptx.h:
17866 * m/sequent.h:
17867 * s/ptx.h:
17868 * s/ptx4-2.h:
17869 * s/ptx4.h: Remove files for systems no longer supported.
17870
17871 * callproc.c (Fcall_process): Fix previous change.
17872
178732008-01-13 Dan Nicolaescu <dann@ics.uci.edu>
17874
17875 * unexsunos4.c: Remove file, system not supported anymore.
17876
17877 * m/mips.h:
17878 * m/intel386.h:
17879 * callproc.c:
17880 * config.in:
17881 * ecrt0.c:
17882 * emacs.c:
17883 * fileio.c:
17884 * frame.c:
17885 * getpagesize.h:
17886 * keyboard.c:
17887 * lread.c:
17888 * process.c:
17889 * puresize.h:
17890 * sysdep.c:
17891 * systty.h:
17892 * syswait.h:
17893 * unexec.c:
17894 * xdisp.c:
17895 * alloc.c: Remove code containing references to symbols defined by
17896 unsupported systems.
17897
178982008-01-11 Kenichi Handa <handa@ni.aist.go.jp>
17899
17900 * coding.c (detect_coding_mask): Fix previous change.
17901
179022008-01-09 Kenichi Handa <handa@ni.aist.go.jp>
17903
17904 * coding.c (detect_coding_iso2022): New arg
17905 latin_extra_code_state. Allow Latin extra codes only
17906 when *latin_extra_code_state is nonzero.
17907 (detect_coding_mask): If there is a NULL byte, detect the encoding
17908 as UTF-16 or binary. If Latin extra codes exist, detect the
17909 encoding as ISO-2022 only when there's no other proper encoding is
17910 found.
17911
179122008-01-08 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
17913
17914 * frame.c (Fmake_terminal_frame): Use #ifdef MAC_OS8 instead of
17915 #ifdef MAC_OS.
17916
179172008-01-08 Richard Stallman <rms@gnu.org>
17918
17919 * fileio.c (Ffile_name_directory, Fexpand_file_name): Doc fixes.
17920
179212008-01-06 Nick Roberts <nickrob@snap.net.nz>
17922
17923 * keyboard.c (parse_menu_item): Don't enclose key bindings on
17924 menu bar in parentheses.
17925
179262008-01-06 Dan Nicolaescu <dann@ics.uci.edu>
17927
17928 * m/7300.h:
17929 * m/acorn.h:
17930 * m/alliant-2800.h:
17931 * m/alliant.h:
17932 * m/alliant1.h:
17933 * m/alliant4.h:
17934 * m/altos.h:
17935 * m/amdahl.h:
17936 * m/apollo.h:
17937 * m/att3b.h:
17938 * m/aviion-intel.h:
17939 * m/aviion.h:
17940 * m/celerity.h:
17941 * m/clipper.h:
17942 * m/cnvrgnt.h:
17943 * m/convex.h:
17944 * m/cydra5.h:
17945 * m/delta88k.h:
17946 * m/dpx2.h:
17947 * m/dual.h:
17948 * m/elxsi.h:
17949 * m/f301.h:
17950 * m/gould-np1.h:
17951 * m/gould.h:
17952 * m/i860.h:
17953 * m/ibmps2-aix.h:
17954 * m/ibmrt-aix.h:
17955 * m/ibmrt.h:
17956 * m/irist.h:
17957 * m/is386.h:
17958 * m/isi-ov.h:
17959 * m/mega68.h:
17960 * m/mg1.h:
17961 * m/news-r6.h:
17962 * m/news-risc.h:
17963 * m/news.h:
17964 * m/nh3000.h:
17965 * m/nh4000.h:
17966 * m/ns16000.h:
17967 * m/ns32000.h:
17968 * m/nu.h:
17969 * m/orion.h:
17970 * m/orion105.h:
17971 * m/paragon.h:
17972 * m/pfa50.h:
17973 * m/plexus.h:
17974 * m/pyramid.h:
17975 * m/pyrmips.h:
17976 * m/sh3el.h:
17977 * m/sps7.h:
17978 * m/sr2k.h:
17979 * m/stride.h:
17980 * m/sun1.h:
17981 * m/sun2.h:
17982 * m/sun3-68881.h:
17983 * m/sun3-fpa.h:
17984 * m/sun3-soft.h:
17985 * m/sun3.h:
17986 * m/sun386.h:
17987 * m/symmetry.h:
17988 * m/tad68k.h:
17989 * m/tahoe.h:
17990 * m/targon31.h:
17991 * m/tek4300.h:
17992 * m/tekxd88.h:
17993 * m/tower32.h:
17994 * m/tower32v3.h:
17995 * m/ustation.h:
17996 * m/wicat.h:
17997 * m/xps100.h:
17998 * s/cxux.h:
17999 * s/cxux7.h:
18000 * s/dgux.h:
18001 * s/dgux4.h:
18002 * s/dgux5-4-3.h:
18003 * s/dgux5-4r2.h:
18004 * s/esix.h:
18005 * s/esix5r4.h:
18006 * s/hiuxmpp.h:
18007 * s/hiuxwe2.h:
18008 * s/iris3-5.h:
18009 * s/iris3-6.h:
18010 * s/isc2-2.h:
18011 * s/isc3-0.h:
18012 * s/isc4-0.h:
18013 * s/isc4-1.h:
18014 * s/newsos5.h:
18015 * s/newsos6.h:
18016 * s/osf1.h:
18017 * s/osf5-0.h:
18018 * s/riscix1-1.h:
18019 * s/riscix12.h:
18020 * s/sco4.h:
18021 * s/sco5.h:
18022 * s/sunos4-0.h:
18023 * s/sunos4-1.h:
18024 * s/sunos413.h:
18025 * s/sunos4shr.h:
18026 * s/umax.h:
18027 * s/unipl5-2.h:
18028 * s/xenix.h:
18029 * cxux-crt0.s:
18030 * unexapollo.c:
18031 * unexconvex.c:
18032 * unexenix.c:
18033 * unexsni.c: Remove files for systems no longer supported.
18034
18035 * m/intel386.h: Remove references to unsupported systems.
18036
18037 * w32.c (get_emacs_configuration): Remove reference to i860.
18038
18039 * sysdep.c: Remove dead code.
18040
180412008-01-05 Dan Nicolaescu <dann@ics.uci.edu>
18042
18043 * s/rtu.h:
18044 * m/masscomp.h: Remove files. Platform is obsolete.
18045
180462008-01-04 Michael Albinus <michael.albinus@gmx.de>
18047
18048 * dbusbind.c (Fdbus_method_return): New function.
18049 (xd_read_message): Add the serial number to the event.
18050 (Fdbus_register_method): Activate the function.
18051
180522008-01-03 Stefan Monnier <monnier@iro.umontreal.ca>
18053
18054 * keyboard.c (read_key_sequence): Fix typo.
18055
180562008-01-03 Michael Albinus <michael.albinus@gmx.de>
18057
18058 * dbusbind.c (all): Replace XCAR by CAR_SAFE and XCDR by CDR_SAFE.
18059 (xd_signature, xd_append_arg): Handle element type detection for
18060 empty arrays.
18061 (Fdbus_call_method, Fdbus_send_signal): Undo type casting for
18062 SDATA () calls; this must be solved more general.
18063 (Fdbus_register_signal): Use SBYTES instead of strlen.
18064
180652008-01-03 Magnus Henoch <magnus@zemdatav>
18066
18067 * dbusbind.c (xd_append_arg): Use unsigned char instead of
18068 unsigned int for byte values (necessary for big-endian platform).
18069 (Fdbus_call_method): Handle the case of no returned arguments.
18070
180712007-12-31 Tom Tromey <tromey@redhat.com> (tiny change)
18072
18073 * dbusbind.c (xd_read_message): Use non-static input_event struct.
18074
180752007-12-31 Magnus Henoch <mange@freemail.hu>
18076
18077 * dbusbind.c (xd_signature): Signature of variant is just "v".
18078
180792007-12-30 Michael Albinus <michael.albinus@gmx.de>
18080
18081 * dbusbind.c: Fix several errors and compiler warnings.
18082 Reported by Tom Tromey <tromey@redhat.com>.
18083 (XD_ERROR, XD_DEBUG_MESSAGE)
18084 (XD_DEBUG_VALID_LISP_OBJECT_P): Wrap code with "do ... while (0)".
18085 (xd_append_arg): Part for basic D-Bus types rewritten.
18086 (xd_retrieve_arg): Split implementation of DBUS_TYPE_BYTE and
18087 DBUS_TYPE_(U)INT16. Don't call XD_DEBUG_MESSAGE with "%f" if not
18088 appropriate.
18089 (xd_read_message): Return Qnil. Don't signal an error; it is not
18090 useful during event reading.
18091 (Fdbus_register_signal): Signal an error if the check for
18092 FUNCTIONP fails.
18093 (Fdbus_register_method): New function. The implementation is not
18094 complete, the call of the function signals an error therefore.
18095 (Fdbus_unregister_object): New function, renamed from
18096 Fdbus_unregister_signal. The initial check signals an error, if
18097 the object is not well formed.
18098
180992007-12-30 Richard Stallman <rms@gnu.org>
18100
18101 * textprop.c (get_char_property_and_overlay):
18102 Signal error if POSITION is out of range in a buffer.
18103
181042007-12-29 Martin Rudalics <rudalics@gmx.at>
18105
18106 * w32fns.c (Fx_create_frame): Make copy of frame parameters
18107 because the original parameters are in pure storage now.
18108
181092007-12-24 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
18110
18111 * xdisp.c (phys_cursor_in_rect_p): Check if cursor is in fringe area.
18112
181132007-12-22 Eli Zaretskii <eliz@gnu.org>
18114
18115 * callint.c (syms_of_callint) <command-history>: Add reference to
18116 history-length in the doc string.
18117
181182007-12-17 Jason Rumney <jasonr@gnu.org>
18119
18120 * w32fns.c (w32_wnd_proc) <WM_KEYDOWN>: Cast char to unsigned
18121 before passing as wParam.
18122
181232007-12-22 Michael Albinus <michael.albinus@gmx.de>
18124
18125 * dbusbind.c (xd_retrieve_arg): Handle DBUS_TYPE_BYTE,
18126 DBUS_TYPE_INT16, DBUS_TYPE_UINT16, DBUS_TYPE_INT64,
18127 DBUS_TYPE_UINT64, DBUS_TYPE_DOUBLE and DBUS_TYPE_SIGNATURE.
18128 Return float when DBUS_TYPE_INT32 or DBUS_TYPE_UINT32 do not fit
18129 as number.
18130 (Fdbus_call_method): Fix docstring.
18131
181322007-12-21 Michael Albinus <michael.albinus@gmx.de>
18133
18134 * dbusbind.c (XD_BASIC_DBUS_TYPE, XD_DBUS_TYPE_P, XD_NEXT_VALUE):
18135 New macros.
18136 (XD_SYMBOL_TO_DBUS_TYPE): Rename from XD_LISP_SYMBOL_TO_DBUS_TYPE.
18137 (XD_OBJECT_TO_DBUS_TYPE): Rename from XD_LISP_OBJECT_TO_DBUS_TYPE.
18138 Simplify.
18139 (xd_signature): New function.
18140 (xd_append_arg): Compute also signatures. Major rewrite.
18141 (xd_retrieve_arg): Make debug messages friendly.
18142 (Fdbus_call_method, Fdbus_send_signal): Extend docstring.
18143 Check for signatures of arguments.
18144
181452007-12-19 Michael Albinus <michael.albinus@gmx.de>
18146
18147 * dbusbind.c (QCdbus_type_byte, QCdbus_type_boolean)
18148 (QCdbus_type_int16, QCdbus_type_uint16, QCdbus_type_int32)
18149 (QCdbus_type_uint32, QCdbus_type_int64, QCdbus_type_uint64)
18150 (QCdbus_type_double, QCdbus_type_string, QCdbus_type_object_path)
18151 (QCdbus_type_signature, QCdbus_type_array, QCdbus_type_variant)
18152 (QCdbus_type_struct, QCdbus_type_dict_entry): New D-Bus type symbols.
18153 (XD_LISP_SYMBOL_TO_DBUS_TYPE): New macro.
18154 (XD_LISP_OBJECT_TO_DBUS_TYPE): Add compound types.
18155 (xd_retrieve_value): Remove. Functionality included in ...
18156 (xd_append_arg): New function.
18157 (Fdbus_call_method, Fdbus_send_signal): Apply it.
18158
181592007-12-16 Michael Albinus <michael.albinus@gmx.de>
18160
18161 * dbusbind.c (top): Include <stdio.h>.
18162 (Fdbus_call_method, Fdbus_send_signal): Apply type cast in
18163 dbus_message_new_method_call and dbus_message_new_signal.
18164 (Fdbus_register_signal): Rename unique_name to uname.
18165 Check handler for FUNCTIONP instead of CHECK_SYMBOL. Handle case of
18166 non-existing unique name. Fix typos in matching rule. Return an
18167 object which is useful in Fdbus_unregister_signal.
18168 (Fdbus_unregister_signal): Reimplementation, in order to remove
18169 only the corresponding entry.
18170 (Vdbus_registered_functions_table): Change the order of entries.
18171 Apply these changes in xd_read_message and Fdbus_register_signal.
18172
181732007-12-16 Andreas Schwab <schwab@suse.de>
18174
18175 * fileio.c (Finsert_file_contents): Fix overflow check to not
18176 depend on undefined integer overflow.
18177
181782007-12-14 Jason Rumney <jasonr@gnu.org>
18179
18180 * w32term.c (w32_read_socket): Use MULTIBYTE_CHAR_KEYSTROKE_EVENT
18181 for characters above 127.
18182
181832007-12-13 Jason Rumney <jasonr@gnu.org>
18184
18185 * w32fns.c (w32_wnd_proc, Fw32_reconstruct_hot_key): Range check
18186 before dereferencing array.
18187 (lookup_vk_code): Remove zero comparison.
18188
181892007-12-14 Michael Albinus <michael.albinus@gmx.de>
18190
18191 * dbusbind.c (xd_retrieve_value, xd_retrieve_arg)
18192 (Fdbus_call_method, Fdbus_send_signal, xd_read_message):
18193 Use `unsigned int' instead of `uint'.
18194 (xd_read_message, Fdbus_register_signal): Split expressions into
18195 multiple lines before operators "&&" and "||", according to the
18196 GNU Coding Standards.
18197
181982007-12-14 Eli Zaretskii <eliz@gnu.org>
18199
18200 * dispextern.h (WINDOWS_NT): Fix incorrect spelling of WINDOWSNT.
18201
182022007-12-12 Juri Linkov <juri@jurta.org>
18203
18204 * buffer.c (Frename_buffer): In interactive spec replace
18205 `read-buffer' with `read-string' that uses `buffer-name-history'
18206 as history, and the current buffer's name as default.
18207
182082007-12-10 Stefan Monnier <monnier@iro.umontreal.ca>
18209
18210 * keyboard.c (Fcommand_execute): Call Qcall_interactively instead of
18211 manipulating the backtrace manually.
18212 (make_lispy_event): Merge the ASCII and MULTIBYTE cases.
18213 (struct backtrace, backtrace_list): Remove.
18214 (command_loop_1): Remove dead var `no_direct'.
18215
18216 * buffer.c (reset_buffer_local_variables): If permanent_too is 0, also
18217 preserve non-built-in buffer-local variables.
18218 (Fkill_all_local_variables): Don't re-create&re-set permanent
18219 buffer-local variables.
18220
182212007-12-09 Juri Linkov <juri@jurta.org>
18222
18223 * buffer.c (Frename_buffer): Change interactive spec from "s" to
18224 Lisp code that uses `read-buffer' with current buffer as default.
18225
182262007-12-08 Michael Albinus <michael.albinus@gmx.de>
18227
18228 * dbusbind.c (xd_read_message): Generate an event for every
18229 registered handler. There might be several handlers registered
18230 for the same signal.
18231 (Fdbus_register_signal): Don't overwrite a registration for the
18232 same signal. Add a new registration if handlers are different.
18233 (Vdbus_registered_functions_table): Rework doc string.
18234
182352007-12-07 Michael Albinus <michael.albinus@gmx.de>
18236
18237 * dbusbind.c (Fdbus_get_unique_name, xd_read_message)
18238 (Fdbus_register_signal): Use DBUS_MAXIMUM_NAME_LENGTH and
18239 DBUS_MAXIMUM_MATCH_RULE_LENGTH for string lengths.
18240 (Fdbus_call_method, Fdbus_send_signal, Fdbus_register_signal):
18241 Unify argument lists.
18242 (xd_read_message, Fdbus_register_signal): Reorder and extend event
18243 arguments and hash table keys. Use unique name for service.
18244 (Fdbus_unregister_signal): Remove checks.
18245 (Vdbus_registered_functions_table): Fix doc string.
18246
182472007-12-05 Magnus Henoch <mange@freemail.hu>
18248
18249 * process.c (make_process): Initialize pty_flag to 0.
18250
182512007-12-05 Jason Rumney <jasonr@gnu.org>
18252
18253 * image.c (xbm_load) [WINDOWSNT]: Shuffle the bits of directly
18254 specified XBMs.
18255
182562007-12-05 Richard Stallman <rms@gnu.org>
18257
18258 * xdisp.c (syms_of_xdisp) <scroll-conservatively>: Doc fix.
18259
182602007-12-05 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
18261
18262 * mac.c (cfsockets_for_select) [MAC_OSX && SELECT_USE_CFSOCKET]:
18263 New variable.
18264 (mac_try_close_socket) [MAC_OSX]: New function.
18265 [MAC_OSX] (sys_select) [SELECT_USE_CFSOCKET]:
18266 Update cfsockets_for_select. Replace invalid CFRunLoop source.
18267
18268 * sysdep.c (emacs_close) [MAC_OSX && HAVE_CARBON]:
18269 Use mac_try_close_socket.
18270
182712007-12-05 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
18272
18273 * unexmacosx.c (unrelocate): New argument BASE. Use it instead of
18274 reloc_base.
18275 (copy_dysymtab): Compute relocation base here.
18276 (rebase_reloc_address) [__ppc64__]: New function.
18277 (copy_dysymtab) [__ppc64__]: Use it if relocation base needs to be
18278 changed.
18279
182802007-12-05 Jason Rumney <jasonr@gnu.org>
18281
18282 * w32proc.c (sys_spawnve): Quote args with wildcards.
18283
182842007-12-05 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
18285
18286 * unexmacosx.c (copy_data_segment): Also copy __gcc_except_tab and
18287 __objc_* sections.
18288 (unrelocate) [_LP64]: Set relocation base to address of data segment.
18289
182902007-12-05 Michael Albinus <michael.albinus@gmx.de>
18291
18292 * dbusbind.c (xd_read_message): Return value is a Lisp_Object.
18293 Move check for Vdbus_registered_functions_table to
18294 xd_read_queued_messages.
18295 (xd_read_queued_messages): Protect xd_read_message calls by
18296 internal_condition_case_1.
18297
182982007-12-04 Michael Albinus <michael.albinus@gmx.de>
18299
18300 * dbusbind.c (QCdbus_system_bus, QCdbus_session_bus): Rename from
18301 Qdbus_system_bus and Qdbus_session_bus, respectively.
18302 (Vdbus_intern_symbols): Remove.
18303 (Vdbus_registered_functions_table): New hash table.
18304 (XD_SYMBOL_INTERN_SYMBOL): Remove.
18305 (xd_read_message, Fdbus_register_signal, Fdbus_unregister_signal):
18306 Rewrite in order to manage registered functions by hash table
18307 Vdbus_registered_functions_table.
18308
183092007-12-03 Jan Djärv <jan.h.d@swipnet.se>
18310
18311 * xterm.c: Update URL to Window Manager Specification in comment.
18312
183132007-12-02 Michael Albinus <michael.albinus@gmx.de>
18314
18315 * config.in (HAVE_DBUS): Add.
18316
18317 * Makefile.in (HAVE_DBUS): Add D-Bus definitions if defined.
18318 (ALL_CFLAGS): Add ${DBUS_CFLAGS}.
18319 (obj): Add $(DBUS_OBJ).
18320 (LIBES): Add $(DBUS_LIBS).
18321 (dbusbind.o): New target.
18322
18323 * dbusbind.c: New file.
18324
18325 * emacs.c (main): Call syms_of_dbusbind when HAVE_DBUS is defined.
18326
18327 * keyboard.c: All D-Bus related code is wrapped by "#ifdef HAVE_DBUS".
18328 (Qdbus_event): New Lisp symbol.
18329 (kbd_buffer_get_event, make_lispy_event): Handle DBUS_EVENT.
18330 (gobble_input): Call xd_read_queued_messages, reading D-Bus messages.
b97439ce 18331 (keys_of_keyboard): Define dbus-event.
aac0c6e3
MR
18332
18333 * termhooks.h (event_kind): Add DBUS_EVENT when HAVE_DBUS is defined.
18334
183352007-12-01 Richard Stallman <rms@gnu.org>
18336
18337 * search.c (syms_of_search) <inhibit-changing-match-data>: Doc fix.
18338
183392007-11-30 Jason Rumney <jasonr@gnu.org>
18340
18341 * w32console.c (w32con_ins_del_lines, scroll_line): Clip to window.
18342 (w32con_reset_terminal_modes): Clear screen buffer.
18343 (w32_face_attributes): Don't use color indexes that are out of range.
18344 Only reverse the default colors.
18345
18346 * xfaces.c (map_tty_color, tty_color_name): Remove special case for
18347 WINDOWSNT.
18348
18349 * w32console.c, w32term.h (vga_stdcolor_name): Remove.
18350
183512007-11-29 Jason Rumney <jasonr@gnu.org>
18352
18353 * w32console.c: Leave HAVE_WINDOW_SYSTEM defined.
18354 (w32_face_attributes): Use Vtty_defined_color_alist to determine
18355 if the terminal colors are initialized.
18356 (unspecified_fg, unspecified_bg): Remove unused declarations.
18357
183582007-11-29 Andreas Schwab <schwab@suse.de>
18359
18360 * keyboard.c (apply_modifiers): Fix typo.
18361
183622007-11-29 Richard Stallman <rms@gnu.org>
18363
18364 * keymap.c (Fcurrent_local_map): Doc fix.
18365
183662007-11-28 Petr Salinger <Petr.Salinger@seznam.cz> (tiny change)
18367
18368 * s/gnu-kfreebsd.h: New file.
18369
183702007-11-28 Stefan Monnier <monnier@iro.umontreal.ca>
18371
18372 * buffer.c (Fget_buffer_create, Fmake_indirect_buffer):
18373 Don't cast redundantly.
18374
18375 * keyboard.c (KEY_TO_CHAR): New macro.
18376 (parse_modifiers, apply_modifiers): Accept integer arguments.
18377 (read_key_sequence): Use them to unify the "shift->unshift" mapping
18378 for chars and symbol keys.
18379 After doing such remapping, apply function-key-map again.
18380
183812007-11-27 Dan Nicolaescu <dann@ics.uci.edu>
18382
18383 * Makefile.in (SOME_MACHINE_LISP): Remove VMS files, they are not
18384 compiled anymore.
18385
183862007-11-26 Andreas Schwab <schwab@suse.de>
18387
18388 * process.c (list_processes_1): Fix indentation level of the
18389 command column.
18390
183912007-11-23 Andreas Schwab <schwab@suse.de>
18392
18393 * editfns.c (Fformat): Handle %c specially since it requires the
18394 argument to be of type int.
18395
183962007-11-23 Markus Triska <markus.triska@gmx.at>
18397
18398 * emacs.c (main): Call init_editfns before init_process, since
18399 init_process sets Vprocess_connection_type depending on OS release.
18400
184012007-11-22 Stefan Monnier <monnier@iro.umontreal.ca>
18402
18403 * data.c (do_symval_forwarding): Use same code as in find_symbol_value.
18404 (find_symbol_value): Use do_symval_forwarding.
18405
18406 * data.c (set_internal): Set the value in the `cons-cell' (for
18407 Buffer_Local_values) not only for frame-local variables.
18408
184092007-11-22 Andreas Schwab <schwab@suse.de>
18410
18411 * data.c (Fnumber_to_string): Add cast when passing EMACS_INT
18412 values to sprintf.
18413 * keymap.c (Fsingle_key_description): Likewise.
18414 * print.c (print_object): Likewise.
18415
184162007-11-22 Jan Djärv <jan.h.d@swipnet.se>
18417
18418 * gtkutil.c (update_frame_tool_bar): Don't call x-gtk-map-stock if
18419 file for image is nil.
18420
184212007-11-22 Dan Nicolaescu <dann@ics.uci.edu>
18422
18423 * term.c: Include stdarg.h.
18424 (fatal): Implement using varargs.
18425 * lisp.h (fatal): Add argument types. (Restore 2005-09-30 change).
18426
184272007-11-21 Stefan Monnier <monnier@iro.umontreal.ca>
18428
18429 * lisp.h (struct Lisp_Buffer_Objfwd): Add a `slottype' field.
18430 * data.c (store_symval_forwarding): Get type from buffer_objfwd.
18431 Update call to buffer_slot_type_mismatch.
18432 * buffer.h (buffer_local_types, PER_BUFFER_TYPE): Remove.
18433 (buffer_slot_type_mismatch): Update.
18434 * buffer.c (buffer_local_types): Remove.
18435 (buffer_slot_type_mismatch): Get the symbol and type as arguments.
18436 (defvar_per_buffer): Set the type in the buffer_objfwd.
18437
184382007-11-21 Jason Rumney <jasonr@gnu.org>
18439
18440 * w32bdf.c (w32_init_bdf_font, w32_BDF_to_x_font):
18441 CreateFileMapping returns NULL on failure.
18442
184432007-11-21 Stefan Monnier <monnier@iro.umontreal.ca>
18444
18445 * search.c (Fset_match_data): Remove the `evaporate' feature.
18446 (unwind_set_match_data): Don't use the `evaporate' feature.
18447
184482007-11-21 Jason Rumney <jasonr@gnu.org>
18449
18450 * dispnew.c (init_display) [WINDOWSNT]: Hardcode terminal_type.
18451
18452 * w32console.c (w32con_write_glyphs): Remove unused variables.
18453
184542007-11-20 Dan Nicolaescu <dann@ics.uci.edu>
18455
18456 * macterm.c (mac_term_init): Call add_keyboard_wait_descriptor.
18457
18458 * s/darwin.h (MULTI_KBOARD): Remove.
18459
18460 * macfns.c (x_create_tip_frame, Fx_create_frame)
18461 (x_create_tip_frame): Don't deal with MULTI_KBOARD.
18462
184632007-11-19 Stefan Monnier <monnier@iro.umontreal.ca>
18464
18465 * buffer.c (Fbuffer_local_value): Remove redundant test.
18466 (swap_out_buffer_local_variables): Swap out binding in `buffer' rather
18467 than in `current-buffer' to match the comment.
18468 Do the swap using swap_in_global_binding.
18469
18470 * data.c (store_symval_forwarding, set_internal):
18471 * eval.c (specbind): Remove dead code.
18472
18473 * coding.c (detect_coding, Fupdate_coding_systems_internal):
18474 * fns.c (Fmd5): Use find_symbol_value rather than SYMBOL_VALUE
18475 Since we do not want to see internal Lisp_*fwd objects here.
18476
184772007-11-18 Jan Djärv <jan.h.d@swipnet.se>
18478
18479 * sysdep.c (init_system_name): Use getaddrinfo if available.
18480
18481 * xterm.c (x_scroll_bar_set_handle, x_scroll_bar_handle_click)
18482 (x_scroll_bar_note_movement): start, end, with, height in struct
18483 scroll_bar are integers and not Lisp_Object, so remove XINT for them.
18484
184852007-11-17 Dan Nicolaescu <dann@ics.uci.edu>
18486
18487 * puresize.h (BASE_PURESIZE): Increase to 1190000.
18488
184892007-11-16 Stefan Monnier <monnier@iro.umontreal.ca>
18490
18491 * buffer.h (struct buffer): Move `undo_list' back to before `name'.
18492 This undoes Richard's change of 14-Oct-2002.
18493
18494 * alloc.c (allocate_other_vector):
18495 * lisp.h (allocate_other_vector): Remove.
18496
18497 * window.c (struct save_window_data): Move non-lisp data to the end
18498 and make it `int' rather than Lisp_Object.
18499 (Fcurrent_window_configuration): Use ALLOCATE_PSEUDOVECTOR.
18500 Done wrap/unwrap integer values.
18501 (Fset_window_configuration, compare_window_configurations):
18502 Update use of fields to their new types.
18503
18504 * xterm.h (struct scroll_bar): Only use Lisp_Object for lisp data.
18505 Turn integer fields into `int'. Merge x_window_low and x_window_high.
18506 (SCROLL_BAR_PACK, SCROLL_BAR_UNPACK, SCROLL_BAR_X_WINDOW)
18507 (SET_SCROLL_BAR_X_WINDOW): Remove.
18508 (SCROLL_BAR_X_WIDGET, SET_SCROLL_BAR_X_WIDGET):
18509 Access the new x_window field directly.
18510 * xterm.c (x_scroll_bar_create): Use a pseudovector.
18511 Don't wrap/unwrap integers into Lisp_Objects.
18512 (XTset_vertical_scroll_bar, x_scroll_bar_handle_click)
18513 (x_scroll_bar_report_motion):
18514 Don't wrap/unwrap integers into Lisp_Objects.
18515 (x_term_init): Use SDATA.
18516 (x_window_to_scroll_bar, x_create_toolkit_scroll_bar)
18517 (x_scroll_bar_set_handle, x_scroll_bar_remove)
18518 (XTset_vertical_scroll_bar, x_scroll_bar_expose)
18519 (x_scroll_bar_report_motion, x_scroll_bar_clear):
18520 * xfns.c (x_set_background_color):
18521 * gtkutil.c (xg_create_scroll_bar, xg_set_toolkit_scroll_bar_thumb):
18522 Access the new x_window field directly.
18523
18524 * alloc.c (ALLOCATE_PSEUDOVECTOR): Move to lisp.h.
18525 (allocate_pseudovector): Make non-static.
18526
18527 * lisp.h (enum pvec_type): New tag PVEC_OTHER.
18528 (allocate_pseudovector): Declare.
18529 (ALLOCATE_PSEUDOVECTOR): Move from alloc.c.
18530
185312007-11-15 Andreas Schwab <schwab@suse.de>
18532
18533 * editfns.c (Fformat): Correctly format EMACS_INT values.
18534 Also take precision into account when formatting an integer.
18535
18536 * keyboard.c (Fevent_symbol_parse_modifiers): Fix declaration.
18537
185382007-11-15 Stefan Monnier <monnier@iro.umontreal.ca>
18539
18540 * keyboard.c (Fevent_symbol_parse_modifiers): New function.
18541 (syms_of_keyboard): Defsubr it.
18542
18543 * data.c (swap_in_global_binding): Fix longstanding bug where
18544 store_symval_forwarding was not called with the right second argument,
18545 thus causing objfwd-ing from being dropped.
18546
185472007-11-14 Juanma Barranquero <lekktu@gmail.com>
18548
18549 * macfns.c (Fx_create_frame, Fx_display_pixel_width)
18550 (Fx_display_pixel_height, Fx_display_planes)
18551 (Fx_display_color_cells, Fx_server_max_request_size)
18552 (Fx_server_vendor, Fx_server_version, Fx_display_backing_store)
18553 (Fx_display_visual_class, Fx_display_save_under):
18554 * w32fns.c (Fx_create_frame, Fx_display_pixel_width)
18555 (Fx_display_pixel_height, Fx_display_planes)
18556 (Fx_display_color_cells, Fx_server_max_request_size)
18557 (Fx_server_vendor, Fx_server_version, Fx_display_screens)
18558 (Fx_display_mm_height, Fx_display_mm_width)
18559 (Fx_display_backing_store, Fx_display_visual_class)
18560 (Fw32_select_font, Fx_display_save_under):
18561 * xfns.c (Fx_create_frame, Fx_display_pixel_width)
18562 (Fx_display_pixel_height, Fx_display_planes)
18563 (Fx_display_color_cells, Fx_server_max_request_size)
18564 (Fx_server_vendor, Fx_server_version, Fx_display_backing_store)
18565 (Fx_display_save_under): Fix typos in docstrings.
18566
185672007-11-14 Juanma Barranquero <lekktu@gmail.com>
18568
18569 * w32fns.c (Fw32_registered_hot_keys): Don't return the nil values
18570 corresponding to deleted entries; they are an implementation detail.
18571 (gray_bitmap_width, gray_bitmap_height, gray_bitmap_bits):
18572 Remove variables.
18573 (w32_pass_extra_mouse_buttons_to_system, w32_strict_fontnames)
18574 (w32_pass_multimedia_buttons_to_system, w32_strict_painting)
18575 (Vw32_charset_info_alist, w32_to_x_color, w32_init_class)
18576 (w32_createscrollbar, w32_createwindow, my_post_msg, w32_get_modifiers)
18577 (w32_grabbed_keys, cancel_all_deferred_msgs): Make static.
18578 (Fw32_define_rgb_color, Fw32_load_color_file)
18579 (syms_of_w32fns) <w32-pass-multimedia-buttons-to-system>:
18580 Fix typos in docstrings.
18581 (Fx_server_version): Reflow docstring.
18582 (Fw32_shell_execute): Doc fixes.
18583
185842007-11-13 Juanma Barranquero <lekktu@gmail.com>
18585
18586 * w32fns.c (Fw32_register_hot_key): Don't try to register hot key
18587 if w32_parse_hot_key returned nil.
18588
185892007-11-10 Stefan Monnier <monnier@iro.umontreal.ca>
18590
18591 * xdisp.c (load_overlay_strings): Fix copy&paste typo.
18592
185932007-11-09 Jason Rumney <jasonr@gnu.org>
d6c952f8 18594
aac0c6e3
MR
18595 * s/ms-w32.c (USE_TOOLKIT_SCROLL_BARS): Define.
18596
18597 * w32term.c (w32_scroll_bar_handle_click): Use SCROLL_BAR_CLICK_EVENT.
18598
18599 * keyboard.c (discard_mouse_events, make_lispy_event) [WINDOWSNT]:
18600 Remove W32_SCROLL_BAR_CLICK_EVENT.
18601
18602 * termhooks.h (enum event_kind) [WINDOWSNT]: Likewise.
18603 Add MULTIMEDIA_KEY_EVENT.
18604
18605 * keyboard.c (lispy_function_keys) [WINDOWSNT]: Add more keys.
18606 (lispy_multimedia_keys) [WINDOWSNT]: New array.
18607 (make_lispy_event) [WINDOWSNT]: Use it to translate
18608 MULTIMEDIA_KEY_EVENT.
18609
18610 * w32term.h (WM_APPCOMMAND): Define if not already.
18611 (GET_APPCOMMAND_LPARAM): Likewise.
18612
18613 * w32term.c (w32_read_socket): Generate MULTIMEDIA_KEY_EVENT from
18614 WM_APPCOMMAND.
18615
18616 * w32fns.c (w32_pass_multimedia_buttons_to_system): New user option.
18617 (syms_of_w32fns): Export and initialize it.
18618 (w32_wnd_proc): Pass WM_APPCOMMAND on to w32_read_socket.
18619
186202007-11-09 Chong Yidong <cyd@stupidchicken.com>
18621
18622 * dispextern.h (struct it): Don't define OVERLAY_STRING_CHUNK_SIZE
18623 twice.
18624
18625 * xdisp.c (handle_face_prop): Fix last change.
18626
186272007-11-09 Richard Stallman <rms@gnu.org>
18628
18629 * xdisp.c (handle_face_prop): Test for strings that came from overlays,
18630 not just for after-strings and before-strings.
18631 Call face_for_overlay_string and pass the overlay to it.
18632 (handle_display_prop): Determine whether property came from an overlay.
18633 Pass OVERLAY arg to handle_single_display_spec.
18634 (handle_single_display_spec): New arg OVERLAY sets it->from_overlay.
18635 (load_overlay_strings): Fill in it->string_overlays.
18636 (get_overlay_strings_1, push_it, pop_it): Handle it->from_overlays.
18637
18638 * xfaces.c (face_for_overlay_string): Function renamed from
18639 face_at_buffer_position_no_overlays, and add arg OVERLAY.
18640
18641 * dispextern.h (struct it): New elt string_overlays.
18642 New elt from_overlay, also in stack.
18643 Rearrange a few elements.
18644 (face_for_overlay_string): Decl renamed from
18645 face_at_buffer_position_no_overlays, and add argument.
18646
186472007-11-09 Richard Stallman <rms@gnu.org>
18648
18649 * xdisp.c (handle_face_prop): Use face_at_buffer_position_no_overlays
18650 to get the base face for an overlay string.
18651
18652 * dispextern.h (face_at_buffer_position_no_overlays): Add decl.
18653
18654 * xfaces.c (face_at_buffer_position_no_overlays): New function.
18655
18656 * xdisp.c (handle_stop): Move some code out of loop.
18657
186582007-11-09 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
18659
18660 * macfns.c [USE_ATSUI] (Fmac_atsu_font_face_attributes):
18661 Fix conversion from Lisp object to ATSUFontID.
18662
186632007-11-09 Jason Rumney <jasonr@gnu.org>
18664
18665 * xdisp.c (Fformat_mode_line): Do nothing when noninteractive.
18666
186672007-11-09 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
18668
18669 * unexmacosx.c (unexec_regions_recorder, unexec_regions_merge):
18670 Don't assume regions are aligned to page boundary.
18671 (print_load_command_name): Add LC_UUID if defined.
18672
186732007-11-09 Richard Stallman <rms@gnu.org>
18674
18675 * emacs.c (syms_of_emacs) <installation-directory>: Reflow docstring.
18676
186772007-11-07 Jason Rumney <jasonr@gnu.org>
18678
18679 * s/windows95.h: Remove.
18680
186812007-11-06 Jan Djärv <jan.h.d@swipnet.se>
18682
18683 * gtkutil.c (xg_tool_bar_menu_proxy): Handle GTK_IMAGE_ICON_NAME and
18684 abort with a message on unhandled store_type values.
18685
186862007-11-01 Jan Djärv <jan.h.d@swipnet.se>
18687
18688 * xterm.c, xfns.c, xselect.c, xterm.h, s/msdos.h, s/sco4.h, s/sco5.h:
18689 Remove HAVE_X11R5 and HAVE_X11R4.
18690
186912007-11-01 Dan Nicolaescu <dann@ics.uci.edu>
18692
18693 * Makefile.in: Remove references to sunfns.c and sunfns.o.
18694
186952007-11-01 Johan Bockgård <bojohan@gnu.org>
18696
18697 * macterm.c, w32term.c, xterm.c (x_draw_stretch_glyph_string):
18698 Don't set s->stippled_p here, since it has already been set by
18699 x_set_glyph_string_gc from x_draw_glyph_string.
18700
187012007-11-01 Dan Nicolaescu <dann@ics.uci.edu>
18702
18703 * sunfns.c: Remove file.
18704
18705 * m/sun386.h:
18706 * m/sun2.h:
18707 * m/sparc.h: Remove Sun windows code.
18708
187092007-10-31 Stefan Monnier <monnier@iro.umontreal.ca>
18710
18711 * keyboard.c (syms_of_keyboard): Initialize the initial_kboard.
18712 (init_keyboard): Set current_kboard's window-system to nil.
18713 (tty_read_avail_input): Typo.
18714 * frame.c (make_initial_frame): Don't initialize the initial_kboard.
18715
187162007-10-31 Dan Nicolaescu <dann@ics.uci.edu>
18717
18718 * s/usg5-4.h:
18719 * s/usg5-3.h:
18720 * s/ptx.h:
18721 * m/is386.h:
18722 * m/ibmps2-aix.h:
18723 * Makefile.in: Remove all mentions of X10.
18724
18725 * dispnew.c (syms_of_display): Don't mention version 10.
18726
187272007-10-28 Juanma Barranquero <lekktu@gmail.com>
18728
18729 * makefile.w32-in (OBJ1): Remove abbrev.$(O).
18730 ($(BLD)/abbrev.$(O)): Remove.
18731
187322007-10-28 Stefan Monnier <monnier@iro.umontreal.ca>
18733
18734 Rewrite abbrev.c in Elisp.
18735 * image.c (Qcount): Don't declare as extern.
18736 (syms_of_image): Initialize and staticpro `Qcount'.
18737 * puresize.h (BASE_PURESIZE): Increase for the new abbrev.el functions.
18738 * emacs.c (main): Don't call syms_of_abbrev.
18739 * Makefile.in (obj): Remove abbrev.o.
18740 (abbrev.o): Remove.
18741 * abbrev.c: Remove.
18742
187432007-10-26 Martin Rudalics <rudalics@gmx.at>
18744
18745 * window.c (window_min_size_2): Don't count header-line.
18746
187472007-10-26 Dan Nicolaescu <dann@ics.uci.edu>
18748
18749 * frame.h (struct frame): Move all bit fields after the first bit
18750 field to take advantage of the available space. Group all the
18751 chars together to reduce wasted space due to padding.
18752
187532007-10-26 Juanma Barranquero <lekktu@gmail.com>
18754
18755 * minibuf.c (Fread_minibuffer, Feval_minibuffer): Reflow docstrings.
18756
18757 * alloc.c (spare_memory, stack_copy, stack_copy_size, ignore_warnings)
18758 (Vdead, dont_register_blocks, staticvec, staticidx, interval_block)
18759 (n_interval_blocks, init_strings, check_string_bytes, check_sblock)
18760 (init_float, free_float, n_cons_blocks, init_cons, all_vectors)
18761 (n_vectors, symbol_block, symbol_block_index, symbol_free_list)
18762 (n_symbol_blocks, init_symbol, marker_block, marker_free_list)
18763 (n_marker_blocks, init_marker, valid_pointer_p, make_pure_float)
18764 (last_marked, mark_object_loop_halt): Make static.
18765
18766 * frame.c (syms_of_frame) <delete-frame-functions>:
18767 Fix typo in docstring.
18768
187692007-10-25 Juanma Barranquero <lekktu@gmail.com>
18770
18771 * w32.c (init_environment): Fix tiny memory leak.
18772 (w32_get_resource): Remove unused variable `ok'.
18773
187742007-10-25 Stefan Monnier <monnier@iro.umontreal.ca>
18775
18776 Make `window-system' into a keyboard-local variable (rather than
18777 frame-local as done originally by multi-tty).
18778
18779 * keyboard.h (struct kboard): Add Vwindow_system.
18780 * keyboard.c (init_kboard): Set a default for Vwindow_system.
18781 (mark_kboards): Mark Vwindow_system.
18782
18783 * dispnew.c (syms_of_display) <window-system>: Declare terminal-local.
18784 (init_display): Don't set the obsolete `window-system' frame-param.
18785
18786 * xterm.c (x_term_init):
18787 * w32term.c (w32_create_terminal):
18788 * term.c (init_tty): Set Vwindow_system.
18789 * macterm.c (mac_create_terminal): Set a keyboard (missing piece of the
18790 multi-tty merge maybe?), copied from w32term.c. Set Vwindow_system.
18791
18792 * xfns.c (Fx_create_frame, x_create_tip_frame):
18793 * w32fns.c (Fx_create_frame, x_create_tip_frame):
18794 * macfns.c (Fx_create_frame):
18795 Don't set the obsolete `window-system' frame-param.
18796
18797 * frame.h (Qwindow_system): Remove.
18798 * frame.c (Qwindow_system): Remove. In `syms_of_frame' as well.
18799 (Fmake_terminal_frame): Don't set obsolete `window-system' frame-param.
18800
188012007-10-24 Richard Stallman <rms@gnu.org>
18802
18803 * frame.c (x_figure_window_size): For fullscreen case,
18804 set USPosition | PPosition without clobbering rest of window_prompting.
18805
18806 * keyboard.c (Fcurrent_idle_time): Doc fix.
18807
18808 * print.c (Fwith_output_to_temp_buffer): Doc fix.
18809
188102007-10-23 Stefan Monnier <monnier@iro.umontreal.ca>
18811
18812 * process.c (unwind_request_sigio): Only define if __ultrix__.
18813
18814 * callproc.c (child_setup): Remove spurious *.
18815
18816 * lisp.h (Fget_text_property): Declare.
18817 (have_menus_p): Declare it here rather than in sys-dep header files.
18818 * macterm.h (have_menus_p):
18819 * msdos.h (have_menus_p):
18820 * xterm.h (have_menus_p): Remove.
18821
18822 * data.c (Fmake_variable_buffer_local, Fmake_local_variable)
18823 (Fmake_variable_frame_local): Just check the variable's const-ness
18824 rather than checking nil or t.
18825
188262007-10-22 Jason Rumney <jasonr@gnu.org>
18827
18828 * w32fns.c: Include math.h.
18829 (w32_abort): Declaration moved to nt/config.nt.
18830
18831 * s/ms-w32.h (HAVE_STDLIB_H): Define.
18832 (abort): Redefinition moved to nt/config.nt.
18833
18834 * m/windowsnt.h: Remove.
18835
188362007-10-22 Juanma Barranquero <lekktu@gmail.com>
18837
18838 * emacs.c (Fdump_emacs): Fix typo in message.
18839 (syms_of_emacs) <kill-emacs-hook>: Fix typo in docstring.
18840 <installation-directory>: Reflow docstring.
18841
188422007-10-22 Juri Linkov <juri@jurta.org>
18843
18844 * minibuf.c: Allow minibuffer default to be a list of default values.
18845 With empty input use the first element of this list as returned default.
18846 (string_to_object)
18847 (read_minibuf_noninteractive): If defalt is cons, set val to its car.
18848 (read_minibuf): If defalt is cons, set histstring to its car.
18849 (Fread_string): If default_value is cons, set val to its car.
18850 (Fread_buffer): If def is cons, use its car.
18851 (Fcompleting_read): If defalt is cons, set val to its car.
18852
188532007-10-21 Michael Albinus <michael.albinus@gmx.de>
18854
18855 * fileio.c (Fcopy_file): Call file name handler with preserve_uid_gid.
18856
188572007-10-20 Juanma Barranquero <lekktu@gmail.com>
18858
18859 * doc.c (Fdocumentation): Check for advice in all cases.
18860
188612007-10-19 Chong Yidong <cyd@stupidchicken.com>
18862
18863 * Makefile.in [HAVE_LIBRESOLV]: Add -lresolv to linker flags.
18864
188652007-10-19 Richard Stallman <rms@gnu.org>
18866
18867 * doc.c (Fdocumentation): Check for and handle an advised function.
18868
188692007-10-19 Juanma Barranquero <lekktu@gmail.com>
18870
18871 * process.c (Fset_process_filter): Doc fix.
18872
188732007-10-18 Stefan Monnier <monnier@iro.umontreal.ca>
18874
18875 * keyboard.c (read_key_sequence): Undo a change introduced by multi-tty
18876 which caused key-translation-map to applied repeatedly (thus breaking
18877 double-mode).
18878
188792007-10-17 Stefan Monnier <monnier@iro.umontreal.ca>
18880
18881 * xselect.c (x_own_selection, x_handle_selection_clear)
18882 (x_clear_frame_selections):
18883 * w32menu.c (list_of_panes, list_of_items):
18884 * w32fns.c (w32_color_map_lookup, Fx_create_frame, Fx_display_list):
18885 * textprop.c (validate_plist, interval_has_all_properties)
18886 (interval_has_some_properties, interval_has_some_properties_list)
18887 (add_properties, text_property_list):
18888 * process.c (Fget_buffer_process, list_processes_1, status_notify):
18889 * minibuf.c (Fassoc_string):
18890 * macselect.c (x_own_selection, x_clear_frame_selections)
18891 (Fx_disown_selection_internal):
18892 * keymap.c (Fcommand_remapping, where_is_internal, describe_map_tree):
18893 Use CONSP rather than !NILP and XC[AD]R rather than Fc[ad]r.
18894
188952007-10-17 Chong Yidong <cyd@stupidchicken.com>
18896
18897 * process.c: Link to libs for calling res_init() if available.
18898 (Fmake_network_process): Call res_init() before getaddrinfo or
18899 gethostbyname, if possible.
18900
189012007-10-17 Stefan Monnier <monnier@iro.umontreal.ca>
18902
18903 * lread.c (read1): Set pvectype for char_tables.
18904
18905 * lisp.h (XMISCANY, XMARKER, XINTFWD, XBOOLFWD, XOBJFWD, XOVERLAY)
18906 (XBUFFER_OBJFWD, XBUFFER_LOCAL_VALUE, XKBOARD_OBJFWD, XSAVE_VALUE):
18907 Add type checks.
18908 (SOME_BUFFER_LOCAL_VALUEP, GC_SOME_BUFFER_LOCAL_VALUEP): Remove.
18909
18910 * alloc.c (free_misc): Use XMISCTYPE.
18911 (live_misc_p, gc_sweep): Use Lisp_Misc_Any.
18912
189132007-10-17 Glenn Morris <rgm@gnu.org>
18914
18915 * minibuf.c (Qcompletion_ignore_case): New Lisp_Object.
18916 (syms_of_minibuf): Add Qcompletion_ignore_case.
18917 * dired.c (Qcompletion_ignore_case): Change to external.
18918 (syms_of_dired) [VMS]: Remove Qcompletion_ignore_case.
18919 * fileio.c (Qcompletion_ignore_case): New external Lisp_Object.
18920 (Fread_file_name): Use it rather than intern'ing.
18921
18922 * coding.c (Qcompletion_ignore_case): New external Lisp_Object.
18923 (Fread_coding_system): Ignore case of user input.
18924
189252007-10-16 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
18926
18927 * xdisp.c (handle_display_prop): Ignore display specs after
18928 replacing one when string text is being replaced.
18929 (handle_single_display_spec): Pretend as if characters with display
18930 property haven't been consumed only when buffer text is being replaced.
18931
189322007-10-16 Stefan Monnier <monnier@iro.umontreal.ca>
18933
18934 * xfns.c (Fx_create_frame, Fx_display_list):
18935 * window.c (window_fixed_size_p, enlarge_window)
18936 (shrink_window_lowest_first):
18937 * macterm.c (init_font_name_table):
18938 * macfns.c (Fx_create_frame, Fx_display_list):
18939 * lread.c (close_load_descs):
18940 * keyboard.c (read_char_x_menu_prompt):
18941 * fns.c (Fmember, Fmemql, Fdelete, Fset_char_table_parent):
18942 * coding.c (code_convert_region_unwind): Test the type of an object
18943 rather than just !NILP before extracting data from it.
18944
18945 * alloc.c (Fpurecopy): Set the pvec tag on pseudo vectors.
18946
18947 * lisp.h (enum Lisp_Misc_Type): Del Lisp_Misc_Some_Buffer_Local_Value.
18948 (XMISCANY): New macro.
18949 (XMISCTYPE): Use it.
18950 (struct Lisp_Misc_Any): New type.
18951 (union Lisp_Misc): Use it.
18952 (struct Lisp_Buffer_Local_Value): Add `local_if_set' bit.
18953 * data.c (Fboundp, store_symval_forwarding, swap_in_global_binding)
18954 (find_symbol_value, set_internal, default_value, Fset_default)
18955 (Fmake_variable_buffer_local, Fmake_local_variable)
18956 (Fkill_local_variable, Fmake_variable_frame_local, Flocal_variable_p)
18957 (Flocal_variable_if_set_p, Fvariable_binding_locus):
18958 The SOME_BUFFER_LOCAL_VALUEP distinction is replaced by local_if_set.
18959 * alloc.c (allocate_buffer): Set the size and tag.
18960 (allocate_misc, mark_maybe_object, mark_object, survives_gc_p):
18961 Use XMISCANY.
18962 (die): Follow the GNU convention for error messages.
18963 * print.c (print_object): SOME_BUFFER_LOCAL_VALUEP -> local_if_set.
18964 * buffer.c (Fget_buffer_create, Fmake_indirect_buffer): Don't set the
18965 tag any more.
18966 (set_buffer_internal_1):
18967 * frame.c (store_frame_param):
18968 * eval.c (specbind):
18969 * xdisp.c (select_frame_for_redisplay): Drop SOME_BUFFER_LOCAL_VALUEP.
18970
18971 * doc.c (Fsnarf_documentation): Simplify.
18972
189732007-10-14 Juanma Barranquero <lekktu@gmail.com>
18974
18975 * w32term.c (w32_font_is_double_byte, my_create_scrollbar): Make static.
18976 (syms_of_w32term) <w32-enable-unicode-output>: Fix typo in docstring.
18977
189782007-10-14 Stefan Monnier <monnier@iro.umontreal.ca>
18979
18980 * buffer.c (Fmake_indirect_buffer): Set the buffer's tag.
18981
189822007-10-14 Juanma Barranquero <lekktu@gmail.com>
18983
18984 * eval.c (do_autoload): Don't save autoloads.
18985
18986 * data.c (Ffset): Save autoload of the function being set.
18987
189882007-10-07 John Paul Wallington <jpw@pobox.com>
18989
18990 * xfns.c (x_create_tip_frame): Set the `display-type' frame
18991 parameter before setting up faces.
18992
189932007-10-13 Eli Zaretskii <eliz@gnu.org>
18994
18995 * ccl.c (Fregister_code_conversion_map):
18996 * keyboard.c (append_tool_bar_item): Reformat last change.
18997
18998 * lisp.h (eabs): Rename from `abs'. All callers changed.
18999
190002007-10-05 Dmitry Antipov <dmantipov@yandex.ru>
19001
19002 * buffer.c (add_overlay_mod_hooklist):
19003 * ccl.c (Fregister_ccl_program, Fregister_code_conversion_map):
19004 * fontset.c (make_fontset):
19005 * keyboard.c (GROW_RAW_KEYBUF, menu_bar_items, menu_bar_item)
19006 (append_tool_bar_item):
19007 * macmenu.c (grow_menu_items):
19008 * w32menu.c (grow_menu_items):
19009 * xmenu.c (grow_menu_items): Use larger_vector.
19010
190112007-10-13 Eli Zaretskii <eliz@gnu.org>
19012
19013 * msdos.c (dos_rawgetc): Undo last change (there's no ``leaving
19014 selected frame'' on MSDOS).
19015
190162007-10-12 Martin Rudalics <rudalics@gmx.at>
19017
19018 * frame.c (Qexplicit_name): New variable.
19019 (x_report_frame_params): Report it in parameter alist.
19020 (syms_of_frame): Intern and staticpro it.
19021
190222007-10-10 Patrick Mahan <mahan@mahan.org> (tiny change)
19023
19024 * macfns.c (x_create_tip_frame): Set terminal for frame.
19025
190262007-10-10 Stefan Monnier <monnier@iro.umontreal.ca>
19027
19028 * frame.c (Qenvironment): Remove.
19029 (syms_of_frame) <Qenvironment>: Don't initialize.
19030 (Fdelete_frame): Don't treat the `environment' param specially.
19031 * frame.h (Qenvironment): Don't declare.
19032 * callproc.c (set_initial_environment): Don't set unused frame param.
19033
19034 * frame.c (Fframe_with_environment): Remove.
19035 (syms_of_frame) <Sframe_with_environment>: Don't declare.
19036
19037 * lisp.h (Fframe_with_environment): Don't declare.
19038
190392007-10-10 Juanma Barranquero <lekktu@gmail.com>
19040
19041 * indent.c (indent_tabs_mode, last_known_column)
19042 (last_known_column_modified): Make static.
19043 (syms_of_indent) <indent-tabs-mode>: Remove redundant info in docstring.
19044
190452007-10-10 Katsumi Yamaoka <yamaoka@jpl.org>
19046
19047 * puresize.h (BASE_PURESIZE): Increase to 1170000.
19048
190492007-10-09 Jason Rumney <jasonr@gnu.org>
19050
19051 * w32term.c (x_set_window_size): Disable code that attempts to tell
19052 Lisp code about a size change before it actually happens.
19053
190542007-10-09 Richard Stallman <rms@gnu.org>
19055
19056 * xdisp.c (handle_invisible_prop): After setting up an ellipsis,
19057 return HANDLED_RETURN.
19058
190592007-10-08 Martin Rudalics <rudalics@gmx.at>
19060
19061 * keyboard.c (kbd_buffer_get_event): Break loop waiting for input
19062 when there's an unread command event.
19063
19064 * frame.c (focus_follows_mouse): Move here from frame.el to allow
19065 window autoselection act appropriately when leaving selected frame.
19066 (syms_of_frame): Initialize focus_follows_mouse.
19067 * frame.h (focus_follows_mouse): Extern it.
19068 * macterm.c (XTread_socket): When focus_follows_mouse is nil
19069 make SELECT_WINDOW_EVENT only if we don't leave the selected frame.
19070 * msdos.c (dos_rawgetc): Likewise.
19071 * w32term.c (w32_read_socket): Likewise.
19072 * xterm.c (handle_one_xevent): Likewise.
19073 * xdisp.c (syms_of_xdisp): In doc-string of
19074 mouse-autoselect-window mention focus-follows-mouse.
19075
190762007-10-08 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
19077
19078 * macterm.c (mac_load_query_font): Fix missing return value.
19079 [USE_CG_DRAWING] (mac_define_fringe_bitmap, mac_destroy_fringe_bitmap):
19080 Add BLOCK_INPUT.
19081
190822007-10-08 Richard Stallman <rms@gnu.org>
19083
19084 * xdisp.c (get_window_cursor_type): Implement documented behavior
19085 for cursor-in-non-selected-windows = t.
19086
190872007-10-08 Jason Rumney <jasonr@gnu.org>
19088
19089 * w32.c (w32_get_resource): Always close registry keys.
19090
190912007-10-08 Jason Rumney <jasonr@gnu.org>
19092
19093 * makefile.w32-in (LIBS): Add COMCTL32.
19094
19095 * w32fns.c (globals_of_w32fns): Init common controls.
19096
190972007-10-08 Richard Stallman <rms@gnu.org>
19098
19099 * image.c (our_memory_buffer): Rename from omfib_buffer.
19100
191012007-10-08 Richard Stallman <rms@gnu.org>
19102
19103 * buffer.c (Foverlays_at): Doc fix.
19104
191052007-10-08 Stefan Monnier <monnier@iro.umontreal.ca>
19106
19107 * fns.c (Fplist_put): Preserve uneven tail data.
19108
191092007-10-08 Peter O'Gorman <bug-gnu-emacs@mlists.thewrittenword.com> (tiny change)
19110
19111 * termhooks.h (enum event_kind): Remove trailing comma.
19112
19113 * frame.h (enum): Remove trailing comma.
19114
191152007-10-08 Dhruva Krishnamurthy <dhruvakm@gmail.com> (tiny change)
19116
19117 * w32proc.c (delete_child): Don't terminate threads of zombies.
19118
191192007-10-08 Martin Rudalics <rudalics@gmx.at>
19120
19121 * keyboard.h (struct kboard): New elt Vlast_repeatable_command.
19122
19123 * keyboard.c (syms_of_keyboard): Set up new Lisp variable
19124 last-repeatable-command.
19125 (init_kboard): Initialize Vlast_repeatable_command.
19126 (command_loop_1): Set it to real_this_command unless that was
19127 bound to an input event.
19128 (mark_kboards): Mark it.
19129
191302007-10-08 Richard Stallman <rms@gnu.org>
19131
19132 * eval.c (condition-case): Doc fix.
19133
191342007-10-08 Masatake YAMATO <jet@gyve.org>
19135
19136 * xfaces.c (tty_supports_face_attributes_p): Fix code
19137 for LFACE_INVERSE_INDEX and LFACE_BACKGROUND_INDEX; code
19138 was copied and not edited.
19139
191402007-10-09 Stefan Monnier <monnier@iro.umontreal.ca>
19141
19142 Add new `input-decode-map' keymap and use it for terminal
19143 escape sequences.
19144 * keyboard.h (struct kboard): Add Vinput_decode_map.
19145 Remove Vlocal_key_translation_map.
19146 * keyboard.c (read_key_sequence): Add support for input-decode-map.
19147 (init_kboard): Init input-decode-map.
19148 Replace local-key-translation-map back with key-translation-map.
19149 (syms_of_keyboard): Declare input-decode-map.
19150 Remove local-key-translation-map. Update docstrings.
19151 (mark_kboards): Mark Vinput_decode_map.
19152 Don't mark Vlocal_key_translation_map.
19153 * keymap.c (Fdescribe_buffer_bindings): Describe input-decode-map.
19154 Replace local-key-translation-map back with key-translation-map.
19155 * term.c (term_get_fkeys_1, CONDITIONAL_REASSIGN):
19156 Bind in input-decode-map rather than function-key-map.
19157
19158 * lisp.h (XSETPSEUDOVECTOR): Don't set the tag anymore.
19159 This was made redundant by the previous introduction of XSETPVECTYPE.
19160
191612007-10-09 Richard Stallman <rms@gnu.org>
19162
19163 * image.c (free_bitmap_record): Rename from Free_Bitmap_Record.
19164
191652007-09-29 Richard Stallman <rms@gnu.org>
19166
19167 * eval.c (internal_condition_case_2, internal_condition_case_1)
19168 (internal_condition_case): Reenable abort if x_catching_errors ()
19169 to see if that really happens and why.
19170
191712007-10-06 Andreas Schwab <schwab@suse.de>
19172
19173 * fileio.c (Fwrite_region): Ignore EINVAL error from fsync.
19174
191752007-10-04 Juanma Barranquero <lekktu@gmail.com>
19176
19177 * image.c (syms_of_image) <image-types>: Fix typo in docstring.
19178
191792007-10-03 Stefan Monnier <monnier@iro.umontreal.ca>
19180
19181 * frame.h (struct frame): Don't try to GC-mark menu_bar_items_used.
19182
191832007-10-02 Stefan Monnier <monnier@iro.umontreal.ca>
19184
19185 * window.h (struct window):
19186 * window.c (struct save_window_data, struct saved_window):
19187 * termhooks.h (struct terminal):
19188 * process.h (struct Lisp_Process):
19189 * frame.h (struct frame):
19190 * buffer.h (struct buffer):
19191 * lisp.h (struct Lisp_Vector, struct Lisp_Char_Table)
19192 (struct Lisp_Bool_Vector, struct Lisp_Subr, struct Lisp_Hash_Table):
19193 The size field of (pseudo)vectors is now unsigned.
19194 (ARRAY_MARK_FLAG, PSEUDOVECTOR_FLAG): Simplify accordingly.
19195
19196 * lisp.h (struct Lisp_Hash_Table): Move non-traced elements at the end.
19197 Turn `count' into an integer.
19198
19199 * fns.c (make_hash_table, hash_put, hash_remove, hash_clear)
19200 (sweep_weak_table, sweep_weak_hash_tables, Fhash_table_count):
19201 * print.c (print_object) <HASH_TABLE_P>: `count' is an int.
19202 * alloc.c (allocate_hash_table): Use ALLOCATE_PSEUDOVECTOR.
19203 (mark_object) <HASH_TABLE_P>: Use mark_vectorlike.
19204
19205 * alloc.c (allocate_pseudovector): New fun.
19206 (ALLOCATE_PSEUDOVECTOR): New macro.
19207 (allocate_window, allocate_terminal, allocate_frame)
19208 (allocate_process): Use it.
19209 (mark_vectorlike): New function.
19210 (mark_object) <FRAMEP, WINDOWP, BOOL_VECTOR_P, VECTORP>: Use it.
19211 (mark_terminals): Use it.
19212 (Fmake_bool_vector, Fmake_char_table, make_sub_char_table)
19213 (Fmake_byte_code): Use XSETPVECTYPE.
19214
19215 * frame.c (Fframe_parameters): Minor simplification.
19216
19217 * insdel.c (adjust_markers_for_insert): Generalize assertion checks.
19218
19219 * marker.c (Fmarker_buffer): Make test for odd case into a failure.
19220
19221 * buffer.c (Fget_buffer_create, init_buffer_once):
19222 * lread.c (defsubr):
19223 * window.c (Fcurrent_window_configuration): Use XSETPVECTYPE.
19224
19225 * lisp.h (ARRAY_MARK_FLAG, PSEUDOVECTOR_FLAG): Don't let them be
19226 defined differently in the m/*.h files.
19227 (XCHAR_TABLE, XBOOL_VECTOR): Add assertion checking.
19228 (XSETPVECTYPE): New macro.
19229 (XSETPSEUDOVECTOR): Use it.
19230
19231 * buffer.c (syms_of_buffer) <local-abbrev-table>: Move from abbrev.c.
19232 (DEFVAR_PER_BUFFER, defvar_per_buffer): Move from lisp.h and lread.c.
19233
19234 * lisp.h (defvar_per_buffer, DEFVAR_PER_BUFFER):
19235 * lread.c (defvar_per_buffer):
19236 * abbrev.c (syms_of_abbrev) <local-abbrev-tabl>: Move to buffer.c.
19237
19238 * window.c (candidate_window_p): Only consider as visible frames that
19239 are on the same terminal.
19240
19241 * m/ibms390x.h (MARKBIT): Remove unused macro.
19242
192432007-10-01 Juanma Barranquero <lekktu@gmail.com>
19244
19245 * lread.c (Fload): Fix typo in docstring.
19246
192472007-10-01 Michaël Cadilhac <michael@cadilhac.name>
19248
19249 * floatfns.c (Fexpt): Manually check for overflows, so that a power
19250 of a non-zero value can't yield zero.
19251
192522007-09-29 Stefan Monnier <monnier@iro.umontreal.ca>
19253
19254 * term.c (term_clear_mouse_face, term_mouse_highlight)
19255 (tty_write_glyphs_with_face): Only define is HAVE_GPM.
19256
19257 * print.c (safe_debug_print): Use XHASH.
19258
19259 * lisp.h (DECL_ALIGN, USE_LSB_TAG): Move logic to before definition of
19260 Lisp elements such as tags.
19261 (XHASH): New macro.
19262 (EQ): Use it.
19263 (SREF, SSET, STRING_COPYIN): Use SDATA.
19264 (VOID_TO_LISP, CVOID_TO_LISP, LISP_TO_VOID, LISP_TO_CVOID): Remove.
19265
19266 * alloc.c (mark_terminal): Remove left-over declaration.
19267 (enum mem_type): Replace all vector subtypes -> MEM_TYPE_VECTORLIKE.
19268 (allocate_vectorlike): Remove type argument. Adjust callers.
19269 (live_vector_p, mark_maybe_pointer, valid_lisp_object_p):
19270 Only handle the one remaining MEM_TYPE_VECTORLIKE.
19271
19272 * alloc.c (MALLOC_BLOCK_INPUT, MALLOC_UNBLOCK_INPUT): New macros
19273 to avoid unnecessary BLOCK_INPUTs when SYNC_INPUT is used.
19274 (xmalloc, xrealloc, xfree, lisp_malloc, lisp_free, lisp_align_malloc)
19275 (lisp_align_free, make_interval, allocate_string, allocate_string_data)
19276 (make_float, Fcons, allocate_vectorlike, Fmake_symbol, allocate_misc):
19277 Use them.
19278
19279 * xfaces.c (load_face_font, free_realized_face, clear_face_gcs):
19280 Don't let signal handlers run when a GC is freed but not yet NULL'ed.
19281 (x_free_gc): Remove BLOCK_INPUT since it's now redundant.
19282
192832007-09-28 Dan Nicolaescu <dann@ics.uci.edu>
19284
19285 * Makefile.in (lisp, shortlisp): Delete server.elc, it is not
19286 loaded by default.
19287
192882007-09-28 Stefan Monnier <monnier@iro.umontreal.ca>
19289
19290 * term.c (Fgpm_mouse_start): Don't signal an error if already activated
19291 on this tty.
19292 (Fgpm_mouse_stop): Only deactivate if it was activated on this tty.
19293
19294 * term.c (mouse_face_window): Rename from Qmouse_face_window.
19295 Update all users.
19296 (handle_one_term_event): Use Gpm_DrawPointer.
19297 (Fgpm_mouse_start): Rename from Fterm_open_connection.
19298 Signal errors instead of returning nil. Always return nil.
19299 (Fgpm_mouse_stop): Rename from Fterm_close_connection.
19300 Make it a noop if gpm-mouse was not activated.
19301 (syms_of_term): Update names.
19302
193032007-09-27 Stefan Monnier <monnier@iro.umontreal.ca>
19304
19305 * sysdep.c (narrow_foreground_group, widen_foreground_group): Static.
19306 (init_sys_modes): Check that gpm_tty is the current tty.
19307
19308 * alloc.c (allocate_terminal): Set the vector size to only count the
19309 lisp fields. Initialize those to nil.
19310 (mark_object): Don't treat terminals specially.
19311 (mark_terminal): Remove.
19312 (mark_terminals): Use mark_object instead.
19313
19314 * termhooks.h (struct terminal): Move all Lisp_Object fields traced by
19315 the GC to the beginning.
19316
19317 * indent.h:
19318 * indent.c: Use EMACS_INT for ints coming from Elisp data.
19319
19320 * indent.c (Fmove_to_column): Use EMACS_INT for buffer positions.
19321
193222007-09-25 Jason Rumney <jasonr@gnu.org>
19323
19324 * frame.c (make_terminal_frame): Remove special case for WINDOWSNT.
19325
19326 * w32console.c (create_w32cons_output): Remove.
19327
19328 * term.c (init_tty): Call init_sys_modes on WINDOWSNT also.
19329
19330 * sysdep.c (init_sys_modes): Use set_terminal_modes_hook.
19331 (reset_sys_modes): Use reset_terminal_modes_hook.
19332
193332007-09-24 Stefan Monnier <monnier@iro.umontreal.ca>
19334
19335 * eval.c (do_autoload): Don't output any message.
19336
193372007-09-24 Juri Linkov <juri@jurta.org>
19338
19339 * emacs.c (standard_args): Change priority of "--no-splash"
19340 from 40 to 3. Add "--no-desktop" with the same priority.
19341
193422007-09-23 Dmitry Antipov <dmantipov@yandex.ru>
19343
19344 * alloc.c (gc_sweep): Check cons cell mark bits word by word
19345 and optimize the case where they are all 1.
19346
193472007-09-23 Johannes Weiner <hannes@saeurebad.de>
19348
19349 * lisp.h (abs): Define if not defined.
19350 * keyboard.c, sound.c, w32term.c, xfaces.c, xterm.c:
19351 Don't define `abs', since it's defined in lisp.h.
19352
193532007-09-22 Eli Zaretskii <eliz@gnu.org>
19354
19355 * term.c (DEV_TTY): New macro. Provide a definition for MS-Windows.
19356 (FRAME_TERMCAP_P) [WINDOWSNT]: Don't define to zero.
19357 (Fcontrolling_tty_p, Fresume_tty, dissociate_if_controlling_tty)
19358 (init_tty): Use DEV_TTY instead of "/dev/tty".
19359 [WINDOWSNT]: No need to protect from NAME arg being null.
19360
193612007-09-21 Dan Nicolaescu <dann@ics.uci.edu>
19362
19363 * term.c (Fsuspend_tty): Run suspend-tty-functions before cleaning
19364 up the tty state.
19365
193662007-09-21 Stefan Monnier <monnier@iro.umontreal.ca>
19367
19368 * termhooks.h (term_gpm): Delete. Use gpm_tty's NULLness instead.
19369 (gpm_tty): Change its type.
19370 * term.c (term_gpm): Delete. Use gpm_tty's NULLness instead.
19371 (gpm_tty): Change its type and initialize it.
19372 (Fterm_open_connection): Check the frame is indeed a tty.
19373 Use the new gpm_tty.
19374 (Fterm_close_connection): Use the new gpm_tty.
19375 * keyboard.c (tty_read_avail_input): Use the new gpm_tty.
19376 * sysdep.c (init_sys_modes): term_gpm -> gpm_tty.
19377
193782007-09-21 Juanma Barranquero <lekktu@gmail.com>
19379
19380 * w32term.c (x_draw_glyph_string): Use strike_through_color, not
19381 underline_color, to draw strike-through.
19382
193832007-09-21 Stefan Monnier <monnier@iro.umontreal.ca>
19384
19385 * lisp.h (allocate_terminal): Declare.
19386
19387 * window.c (candidate_window_p): Consider frames that are being placed
19388 by the user as somewhere between visible and iconified.
19389 (window_loop): Prefer windows on the current frame.
19390 (Fselect_window): Move the use of select-frame to the beginning so we
19391 can just delegate all the work (it'll call us back anyway).
19392
19393 * frame.c (Qdisplay_environment_variable):
19394 * frame.h (Qdisplay_environment_variable): Delete.
19395
19396 * .gdbinit (xbacktrace): Print the arg's address rather than the value
19397 of the first arg, since that value may be a union.
19398
19399 * callproc.c (child_setup, getenv_internal): Use the frame's `display'
19400 parameter rather than Qdisplay_environment_variable. If all else
19401 fails, look for DISPLAY in initial-environment.
19402
194032007-09-21 Glenn Morris <rgm@gnu.org>
19404
19405 * Makefile.in (emacstool): Remove target.
19406 (lisp, shortlisp): Remove termdev.elc.
19407
194082007-09-21 Markus Triska <markus.triska@gmx.at>
19409
19410 * xterm.c (x_delete_display): Compile session management conditionally.
19411
194122007-09-20 Stefan Monnier <monnier@iro.umontreal.ca>
19413
19414 * callproc.c (getenv_internal_1): New function.
19415 (getenv_internal): Use it.
19416 (Fgetenv_internal): Use it. Accept an env-list as optional arg.
19417
19418 * terminal.c (get_terminal): Don't accept ints to represent terminals.
19419 (Fterminal_name, Fterminal_parameters, Fterminal_parameter)
19420 (Fset_terminal_parameter): Work with dead terminals as well.
19421 (Fmodify_terminal_parameters): Remove.
19422
19423 * terminal.c (get_terminal): Handle terminals.
19424 Make sure the terminal returned is live.
19425 (create_terminal): Use allocate_terminal.
19426 (mark_terminals): Move to alloc.c.
19427 (delete_terminal): Use terminal->name as liveness status.
19428 NULL out fields after freeing their contents.
19429 Don't deallocate the object.
19430 (Fframe_terminal): Use FRAME_TERMINAL. Return the terminal object
19431 rather than an int.
19432 (Fterminal_live_p): Accept non-integer arguments.
19433 (Fterminal_list): Return terminal objects rather than an ints.
19434
19435 * alloc.c (enum mem_type): New member for `terminal' objects.
19436 (allocate_terminal): New function.
19437 (mark_maybe_pointer, valid_lisp_object_p, mark_object):
19438 Handle terminals.
19439 (mark_terminal): New fun.
19440 (mark_terminals): Move from terminal.c.
19441
19442 * term.c (get_tty_terminal): Don't treat output_initial specially.
19443 (Fsuspend_tty, Fresume_tty): Use terminal objects rather than ints.
19444 (delete_tty): Use terminal->name as liveness status.
19445
19446 * termhooks.h (struct terminal): Make it into a pseudovector.
19447 Remove `deleted' replaced by checking `name's nullness.
19448
19449 * print.c (print_object): Handle terminals.
19450
19451 * lisp.h (enum pvec_type): New `terminal' pseudovector.
19452 (XTERMINAL, XSETTERMINAL, TERMINALP, GC_TERMINALP): New macros.
19453
19454 * frame.c (make_terminal_frame):
19455 * keyboard.c (tty_read_avail_input):
19456 * w32term.c (x_delete_terminal):
19457 * xfns.c (Fx_create_frame, x_create_tip_frame):
19458 * xterm.c (x_delete_terminal): Use terminal->name as liveness status.
19459
194602007-09-20 Glenn Morris <rgm@gnu.org>
19461
19462 * process.c (Fmake_network_process): Doc fix.
19463
194642007-09-19 Jason Rumney <jasonr@gnu.org>
19465
19466 * dispextern.h (w32_init_fringe, mac_init_fringe): Declare rif argument.
19467
194682007-09-19 Michaël Cadilhac <michael@cadilhac.name>
19469
19470 * coding.c (detect_eol_type, detect_eol_type_in_2_octet_form):
19471 Fix a C warning regarding variable constness.
19472
19473 * xterm.c (handle_one_xevent): Fix a C warning.
19474
194752007-09-18 Jason Rumney <jasonr@gnu.org>
19476
19477 * w32fns.c (Fx_focus_frame): Rename from Fw32_focus_frame.
19478
194792007-09-17 Jan Djärv <jan.h.d@swipnet.se>
19480
19481 * gtkutil.c (gdpy_def): New variable.
19482 (xg_initialize): Initialize gdpy_def.
19483 (xg_display_close): If no other display exists, set gdpy_def to a
19484 new connection.
19485
194862007-09-16 Jan Djärv <jan.h.d@swipnet.se>
19487
19488 * gtkutil.c (xg_get_image_for_pixmap): Always create a GdkPixbuf
19489 when we have no file name for the icon.
19490 (xg_tool_bar_expose_callback): Remove.
19491 (xg_create_tool_bar): Don't connect expose signal to
19492 xg_tool_bar_expose_callback.
19493 (xg_get_file_with_chooser): Move GCPRO1 after declarations.
19494
194952007-09-16 Andreas Schwab <schwab@suse.de>
19496
19497 * alloc.c (reset_malloc_hooks): Set the hooks to the previous
19498 values instead of zapping them.
19499
195002007-09-14 Glenn Morris <rgm@gnu.org>
19501
19502 * fringe.c (init_fringe_bitmap) <swap_nibble>: Move to file scope.
19503 * gtkutil.c (xg_separator_p) <separator_names>: Move to file scope.
19504 * image.c (our_memory_fill_input_buffer) <buffer>: Move to file
19505 scope and rename to omfib_buffer for clarity.
19506 (gif_load) <interlace_start, interlace_increment>: Move to file scope.
19507
195082007-09-14 Kenichi Handa <handa@m17n.org>
19509
19510 * xterm.c (handle_one_xevent): Skip decoding if nbytes is zero.
19511
195122007-09-13 Jason Rumney <jasonr@gnu.org>
19513
19514 * fringe.c (w32_init_fringe, mac_init_fringe): Add rif argument.
19515
19516 * w32term.c (w32_term_init): Pass rif to w32_init_fringe.
19517
19518 * macterm.c (mac_initialize): Don't call mac_init_fringe here.
19519 (mac_term_init): Call here instead, passing rif.
19520
195212007-09-13 Glenn Morris <rgm@gnu.org>
19522
19523 * s/hpux.h: No longer define `static' as nothing.
19524
195252007-09-13 Johan Bockgård <bojohan@gnu.org>
19526
19527 * callint.c (Fcall_interactively): Remove unused var `fun'.
19528
195292007-09-12 Romain Francoise <romain@orebokech.com>
19530
19531 * window.c (prefer_window_split_horizontally, display_buffer):
19532 Revert 2007-09-08 change.
19533
195342007-09-12 Glenn Morris <rgm@gnu.org>
19535
19536 * alloca.c: Remove file.
19537 * Makefile.in (alloca): Do not undef.
19538 (allocaobj, alloca.o): Remove.
19539 (otherobj): Remove allocaobj.
19540 * keyboard.c (command_loop_1): Remove #ifdef C_ALLOCA block.
19541 * regex.c (C_ALLOCA): Remove all references and code that was only
19542 used when this was defined.
19543 * search.c (boyer_moore): Remove #ifdef C_ALLOCA block.
19544 * xmenu.c (xmenu_show): Remove #ifdef C_ALLOCA block.
19545 * m/ibms390x.h, m/sh3el.h (C_ALLOCA): Remove references to this.
19546
19547 * Makefile.in (SOURCES, unlock, relock): Delete.
19548
19549 * gtkutil.c (cnt): Rename to menu_grab_callback_cnt for clarity.
19550 (menu_grab_callback): All uses changed.
19551
19552 * xselect.c (cnt): Rename to x_reply_selection_request_cnt for clarity.
19553 (x_reply_selection_request): All uses changed.
19554
195552007-09-11 Stefan Monnier <monnier@iro.umontreal.ca>
19556
19557 * lread.c (load_warn_old_style_backquotes): Change message to look
19558 better when it appears in the middle of byte-compiler messages.
19559
195602007-09-10 Dan Nicolaescu <dann@ics.uci.edu>
19561
19562 * s/darwin.h (MULTI_KBOARD): Only define for Carbon.
19563
19564 * xterm.c (x_create_terminal): Add comment.
19565
19566 * term.c (clear_tty_hooks, set_tty_hooks): Add comments.
19567
195682007-09-10 Richard Stallman <rms@gnu.org>
19569
19570 * xterm.c (x_term_init): Give error if can't open DISPLAY_NAME.
19571
195722007-09-10 Michaël Cadilhac <michael@cadilhac.name>
19573
19574 * lisp.h (struct Lisp_Subr): Rename `prompt' field to `intspec'.
19575 (DEFUN): Document `intspec', use it instead of `prompt'.
19576
19577 * eval.c (Fcommandp): Change `->prompt' to `->intspec'.
19578
19579 * data.c (Finteractive_form): If the interactive specification starts
19580 with a `(', use it as a Lisp form.
19581
19582 * fileio.c (Fset_file_modes): Add an interactive spec that reads a file
19583 name and file modes.
19584
19585 * callint.c (Fcall_interactively): Comment fixes.
19586
195872007-09-10 Stefan Monnier <monnier@iro.umontreal.ca>
19588
19589 * callint.c (Fcall_interactively): Use Finteractive_form also for subrs
19590 and compiled functions.
19591
195922007-09-08 Fredrik Axelsson <f.axelsson@gmail.com>
19593
19594 * window.c (prefer_window_split_horizontally): New variable.
19595 (display_buffer): Consider splitting window horizontally depending
19596 on prefer_window_split_horizontally.
19597
195982007-09-08 Eli Zaretskii <eliz@gnu.org>
19599
19600 * sysdep.c [WINDOWSNT]: Don't include sysselect.h.
19601
196022007-09-07 Stefan Monnier <monnier@iro.umontreal.ca>
19603
19604 * s/cygwin.h (GC_MARK_STACK): Enable conservative stack marking.
19605
19606 * frame.c (x_set_frame_parameters): Check number is positive before
19607 using XFASTINT.
19608
19609 * window.c (freeze_window_start): Don't presume selected_window holds
19610 a window object.
19611 (Fdisplay_buffer): Remove `register' since `buffer' needs to be gcpro'd.
19612
196132007-09-07 Angelo Graziosi <Angelo.Graziosi@roma1.infn.it> (tiny change)
19614
19615 * term.c (dissociate_if_controlling_tty): Call setsid on CYGWIN.
19616
196172007-09-07 Stefan Monnier <monnier@iro.umontreal.ca>
19618
19619 * window.c (Vsplit_window_preferred_function): New var.
19620 (Fdisplay_buffer): Use it.
19621 (syms_of_window): Export, and initialize it.
19622
196232007-09-06 Pixel <pixel@mandriva.com> (tiny change)
19624
19625 * image.c (gif_load): Fix bug: Handle nonexistent colormap.
19626
196272007-09-06 Glenn Morris <rgm@gnu.org>
19628
19629 * gtkutil.c (menu_grab_callback) <cnt>:
19630 * xselect.c (x_reply_selection_request) <cnt>: Move static
19631 variable to file scope.
19632
196332007-09-06 Stefan Monnier <monnier@iro.umontreal.ca>
19634
19635 * xdisp.c (redisplay_internal): Make sure Elisp code always sees
19636 consistent values of selected_frame and selected_window.
19637
196382007-09-04 Jason Rumney <jasonr@gnu.org>
19639
19640 * w32console.c (initialize_w32_display): Zero unused hooks.
19641
196422007-09-04 Dan Nicolaescu <dann@ics.uci.edu>
19643
19644 * term.c (Vsuspend_tty_functions, Vresume_tty_functions)
19645 (syms_of_term, Fsuspend_tty, Fresume_tty): Undo previous change.
19646
196472007-09-04 Jason Rumney <jasonr@gnu.org>
19648
19649 * term.c (init_tty) [WINDOWSNT]: Add hooks that are not accessible
19650 in w32console.c. Set up input. Remove XXX comments that have been
19651 confirmed as correct.
19652
19653 * s/ms-w32.h (MULTI_KBOARD): Define.
19654
19655 * w32console.c (one_and_only_w32cons): Remove.
19656 (initialize_w32_display): Take terminal argument.
19657
19658 * term.c (init_tty) [WINDOWSNT]: Pass terminal to
19659 initialize_w32_display.
19660 (init_tty) [MULTI_KBOARD]: Include this code on WINDOWSNT too.
19661
19662 * termhooks.h (enum event_kind) <HORIZ_WHEEL_EVENT>: New event.
19663
19664 * keyboard.c (discard_mouse_events): Discard it.
19665 (make_lispy_event): Translate it to a lisp event.
19666 (lispy_wheel_names): Add wheel-left and right events.
19667 (syms_of_keyboard): Enlarge wheel_syms.
19668
19669 * w32fns.c (w32_wnd_proc) <WM_DROPFILES>: Merge with WM_MOUSEWHEEL.
19670 <WM_MOUSEHWHEEL>: Pass new system message to lisp.
19671
19672 * w32term.h (WM_MOUSEHWHEEL): Define if system headers don't.
19673
19674 * w32term.c (construct_mouse_wheel): Make HORIZ_WHEEL_EVENT
19675 from WM_MOUSEHWHEEL.
19676 (w32_read_socket) <WM_MOUSEHWHEEL>: Treat as WM_MOUSEWHEEL.
19677
19678 * w32fns.c (x_create_tip_frame) [MULTI_KBOARD]: Get keyboard from
19679 terminal.
19680
19681 * w32term.c (w32_create_terminal) [MULTI_KBOARD]: Create a new
19682 keyboard for the terminal.
19683
196842007-09-04 Dan Nicolaescu <dann@ics.uci.edu>
19685
19686 * term.c (Vsuspend_tty_hook): Rename from Vsuspend_tty_functions.
19687 (Vresume_tty_hook): Rename from Vresume_tty_functions.
19688 (syms_of_term): Rename suspend-tty-functions to suspend-tty-hook
19689 and resume-tty-function to resume-tty-hook.
19690 (Fsuspend_tty, Fresume_tty): Use new names.
19691
196922007-09-02 Jan Djärv <jan.h.d@swipnet.se>
19693
19694 * gtkutil.c (update_frame_tool_bar): Handle stock name as a named icon
19695 if it starts with "n:".
19696
196972007-08-31 Jan Djärv <jan.h.d@swipnet.se>
19698
19699 * gtkutil.c (update_frame_tool_bar): Initialize wbutton to NULL.
19700
197012007-08-31 Stefan Monnier <monnier@iro.umontreal.ca>
19702
19703 * frame.h:
19704 * frame.c (Qterm_environment_variable): Remove.
19705 (syms_of_frame): Don't init and staticpro it.
19706
19707 * callproc.c (getenv_internal): Remove special case for $TERM.
19708
19709 * callproc.c (Vinitial_environment): New variable.
19710 (set_initial_environment): Initialize it.
19711 (syms_of_callproc): Declare it.
19712 (child_setup): Don't mess with TERM via Qterm_environment_variable; the
19713 TERM under which a process runs is never related to the TERM in which
19714 Emacs is running.
19715
197162007-08-29 Dan Nicolaescu <dann@ics.uci.edu>
19717
19718 * config.in (HAVE_WINDOW_SYSTEM): Don't undef MULTI_KBOARD here...
19719 * s/darwin.h: ... do it here.
19720
197212007-08-29 Stefan Monnier <monnier@iro.umontreal.ca>
19722
19723 * lisp.h (set_initial_environment): Rename from set_global_environment.
19724
19725 * Makefile.in (${etc}DOC): Re-add a ${EXEEXT} which seems to have been
19726 removed by mistake on the multi-tty branch.
19727
19728 * frame.c (make_terminal_frame): Yet Another Int/Lisp_Object Mixup.
19729 (Fmodify_frame_parameters): Return a value.
19730
19731 * image.c (png_load): Comment-out var only used in commented-out code.
19732
19733 * term.c (mark_ttys): Don't bother checking top_frame (incorrectly)
19734 before passing it to mark_object.
19735
19736 * xfaces.c (internal_resolve_face_name): Return a value.
19737 (internal_resolve_face_name, resolve_face_name_error): Comment out.
19738
19739 * xfns.c (check_x_display_info): Yet Another Int/Lisp_Object Mixup.
19740 (x_icon): Comment-out var only used in commented-out code.
19741
197422007-08-29 Romain Francoise <romain@orebokech.com>
19743
19744 * keyboard.c (Fset_input_mode): Don't call `Fset_quit_char' if
19745 QUIT hasn't been provided.
19746
197472007-08-29 Dan Nicolaescu <dann@ics.uci.edu>
19748
19749 * callproc.c (child_setup, getenv_internal): Use the
19750 display-environment-variable and term-environment-variable frame params.
19751 (set_initial_environment): Initialise Vprocess_environment.
19752
19753 * config.in: Disable multi-keyboard support on a mac.
19754
19755 * frame.c (Qterm_environment_variable)
19756 (Qdisplay_environment_variable): New variables.
19757 (syms_of_frame): Intern and staticpro them.
19758 (Fmake_terminal_frame): Disable output method test.
19759
19760 * frame.h: Declare them here.
19761
19762 * macfns.c (x_set_mouse_color): Get rif from the frame.
19763 (x_set_tool_bar_lines): Don't use updating_frame.
19764 (mac_window): Add 2 new parameters for consistency with other systems.
19765 (Fx_create_frame): Fix doc string. Rename the parameter. Set the
19766 frame parameters following what is done in X11 and w32. Don't use
19767 FRAME_MAC_DISPLAY_INFO.
19768 (Fx_open_connection, start_hourglass): Remove window-system check.
19769 (x_create_tip_frame): Get the keyboard from the terminal.
19770
19771 * macmenu.c: Reorder includes.
19772 (Fx_popup_menu): Use terminal specific mouse_position_hook.
19773
19774 * macterm.c (XTset_terminal_modes, XTreset_terminal_modes): Add a
19775 terminal parameter.
19776 (x_clear_frame): Add a frame parameter.
19777 (note_mouse_movement): Get rif from the frame.
19778 (mac_term_init): Initialize the terminal.
19779 (mac_initialize): Make static and move terminal initialization ...
19780 (mac_create_terminal): ... to this new function.
19781
19782 * macterm.h (struct mac_display_info): Add terminal.
19783 (mac_initialize): Delete declaration.
19784
19785 * puresize.h (BASE_PURESIZE): Increase base value to 1164000.
19786
19787 * sysdep.c: Comment out text after #endif.
19788
19789 * term.c (init_tty): Only use terminal->kboard when MULTI_KBOARD
19790 is defined. Better initialize ttys in windows. Use terminal
19791 specific mouse_position_hook.
19792
19793 * termhooks.h (union display_info): Add mac_display_info.
19794
19795 * w32fns.c (Fx_create_frame): Use kboard from the terminal.
19796 Set the default minibuffer frame, window_system and the rest of the
19797 frame parameters following what is done in X11.
19798
19799 * w32term.c (w32_initialize): Make static.
19800
19801 * xselect.c (x_handle_selection_clear): Only access
19802 terminal->kboard when MULTI_KBOARD is defined.
19803
19804 * s/darwin.h (SYSTEM_PURESIZE_EXTRA): Define here.
19805 (SYSTEM_PURESIZE_EXTRA): Only define on Carbon.
19806
198072007-08-29 Jason Rumney <jasonr@gnu.org>
19808
19809 * frame.c (Fdelete_frame): Only get kboard when MULTI_KBOARD defined.
19810 (make_terminal_frame) [WINDOWSNT]: Initialize terminal.
19811
19812 * fringe.c (w32_init_fringe w32_reset_fringes) [HAVE_NTGUI]:
19813 (mac_init_fringe) [MAC_OS]: Get rif from selected_frame.
19814
19815 * keyboard.c (restore_kboard_configuration): Only define when
19816 MULTI_KBOARD defined.
19817
19818 * makefile.w32-in: Update dependancies from Makefile.in.
19819 (OBJ1): Add terminal.$(O)
19820
19821 * term.c (dissociate_if_controlling_tty) [WINDOWSNT]:
19822 Don't define function body.
19823 (init_tty) [WINDOWSNT]: Use selected_frame for initializing.
19824
19825 * termhooks.h (display_info) [WINDOWSNT]: Add w32.
19826
19827 * w32.c (request_sigio, unrequest_sigio): Remove.
19828
19829 * w32console.c (w32con_move_cursor, w32con_clear_to_end)
19830 (w32con_clear_frame, w32con_clear_end_of_line)
19831 (w32con_ins_del_lines, w32con_insert_glyphs, w32con_write_glyphs)
19832 (w32con_delete_glyphs, w32con_set_terminal_window)
19833 (scroll_line, w32_sys_ring_bell): Add frame arg.
19834 (w32con_set_terminal_modes, w32con_reset_terminal_modes):
19835 Add terminal arg.
19836 (PICK_FRAME): Remove.
19837 (w32con_write_glyphs): Use frame specific terminal coding.
19838 (one_and_only_w32cons): New global variable.
19839 (initialize_w32_display): Use it for storing hooks.
19840 (create_w32cons_output): New function.
19841
19842 * w32inevt.c, w32inevt.h (w32_console_read_socket): Make first
19843 arg a frame.
19844
19845 * w32fns.c (x_create_tip_frame): Set terminal and ref count.
19846 Set window_system.
19847 (x_set_tool_bar_lines): Don't use updating_frame.
19848 (Fx_create_frame): Set terminal and ref count.
19849 (Fx_open_connection): Remove window-system check.
19850
19851 * w32menu.c (Fx_popup_menu): Use terminal specific mouse_position_hook.
19852
19853 * w32term.c (w32_term_init): Call add_keyboard_wait_descriptor.
19854 (w32_set_terminal_modes, w32_reset_terminal_modes): Add terminal arg.
19855 (x_clear_frame, x_delete_glyphs, w32_ring_bell, x_ins_del_lines):
19856 Add frame arg.
19857 (x_delete_terminal, w32_create_terminal): New functions.
19858 (w32_term_init): Create a terminal.
19859 (w32_initialize): Move terminal specific initialization to
19860 w32_create_terminal.
19861
19862 * w32term.h (x_output): Remove foreground_pixel and background_pixel.
19863 (w32_clear_rect, w32_clear_area): Use background from frame.
19864 (w32_display_info): Add terminal.
19865 (w32_sys_ring_bell, x_delete_display): Declare here.
19866
19867 * xdisp.c (display_menu_bar) [HAVE_NTGUI]: Check frame type.
19868
19869 * s/ms-w32.h (SYSTEM_PURESIZE_EXTRA): Bump to 50k.
19870
198712007-08-29 Kalle Olavi Niemitalo <kon@iki.fi> (tiny change)
19872
19873 * keyboard.c (interrupt_signal, handle_interrupt, Fset_quit_char):
19874 Fix get_named_tty calls for the controlling tty.
19875
198762007-08-29 ARISAWA Akihiro <ari@mbf.ocn.ne.jp> (tiny change)
19877
19878 * term.c (dissociate_if_controlling_tty)[USG]: Fix parse error.
19879
198802007-08-29 Yoshiaki Kasahara <kasahara@nc.kyushu-u.ac.jp> (tiny change)
19881
19882 * term.c (tty_insert_glyphs): Add missing first parameter.
19883
198842007-08-29 Károly Lőrentey <karoly@lorentey.hu>
19885
19886 * buffer.c (Fbuffer_list, Fbury_buffer):
19887 Take frame->buried_buffer_list into account.
19888
19889 * cm.c (current_tty): New variable, for cmputc().
19890 (cmputc): Use it.
19891 (cmcheckmagic): Add tty parameter, look up terminal streams there.
19892 (calccost): Add tty parameter. Use emacs_tputs() instead of tputs().
19893 (cmgoto): Add tty parameter. Pass it on to calccost().
19894 Use emacs_tputs() instead of tputs().
19895
19896 * cm.h (emacs_tputs): New macro to set current_tty, and then call
19897 tputs().
19898 (current_tty): New variable, for cmputc().
19899 (cmcheckmagic, cmputc, cmgoto): Add prototypes.
19900
19901 * eval.c (unwind_to_catch): Don't call x_fully_uncatch_errors.
19902 (internal_condition_case, internal_condition_case_1)
19903 (internal_condition_case_2): Don't abort when x_catching_errors.
19904
19905 * fns.c (Fyes_or_no_p): Don't try to open an X dialog on tty terminals.
19906 (Fy_or_n_p): Likewise. Use temporarily_switch_to_single_kboard to
19907 prevent crashes caused by bogus longjmps in read_char.
19908
19909 * keymap.h (Fset_keymap_parent): Add EXFUN.
19910
19911 * macterm.h (FRAME_FOREGROUND_PIXEL, FRAME_BACKGROUND_PIXEL)
19912 * w32term.h (FRAME_FOREGROUND_PIXEL, FRAME_BACKGROUND_PIXEL):
19913 Remove redundant definition.
19914
19915 * macfns.c (x_set_mouse_color, x_make_gc):
19916 Use FRAME_BACKGROUND_PIXEL and FRAME_FOREGROUND_PIXEL.
19917
19918 * w32term.c (x_free_frame_resources):
19919 Use FRAME_BACKGROUND_PIXEL and FRAME_FOREGROUND_PIXEL.
19920 (w32_initialize): Use the accessor macros for terminal characteristics.
19921
19922 * macterm.c (mac_initialize): Use Fset_input_interrupt_mode.
19923 Use the accessor macros for terminal characteristics.
19924 * msdos.c (internal_terminal_init): Use the accessor macros for
19925 terminal characteristics.
19926 (ScreenVisualBell, internal_terminal_init):
19927 Use FRAME_BACKGROUND_PIXEL and FRAME_FOREGROUND_PIXEL.
19928
19929 * termopts.h (no_redraw_on_reenter): Declare.
19930
19931 * alloc.c (emacs_blocked_malloc): Disable mallopt call.
19932 (mark_terminals, mark_ttys): Declare.
19933 (Fgarbage_collect): Call them.
19934 (mark_object): Mark buried_buffer_list.
19935
19936 * prefix-args.c: Include stdlib.h for exit.
19937
19938 * syssignal.h: Add comment.
19939
19940 * indent.c: Include stdio.h.
19941
19942 * window.h (Vinitial_window_system): Declare.
19943 (Vwindow_system): Delete declaration.
19944
19945 * fontset.c (Finternal_char_font): Use FRAME_RIF.
19946
19947 * image.c (lookup_image): Don't initialize `c' until the xasserts
19948 have been run.
19949
19950 * gtkutil.c (xg_create_frame_widgets): Use FRAME_BACKGROUND_PIXEL and
19951 FRAME_FOREGROUND_PIXEL.
19952
19953 * print.c (print_preprocess): Don't lose print_depth levels while
19954 iterating.
19955
19956 * widget.c (update_from_various_frame_slots):
19957 Use FRAME_BACKGROUND_PIXEL and FRAME_FOREGROUND_PIXEL.
19958
19959 * window.c (set_window_buffer): Don't call clear_mouse_face on tty
19960 frames.
19961 (window_internal_height): Remove bogus make_number call.
19962 (init_window_once): Call make_terminal_frame with two zero parameters.
19963
19964 * fileio.c (Fread_file_name): Update comment.
19965
19966 * callint.c (Fcall_interactively):
19967 Use temporarily_switch_to_single_kboard instead of single_kboard_state.
19968 Make sure it is correctly unwound.
19969
19970 * xsmfns.c (x_session_close): New function.
19971
19972 * coding.h (terminal_coding, safe_terminal_coding, keyboard_coding):
19973 Delete declarations.
19974
19975 * xterm.h: Remove declaration for x_fully_uncatch_errors.
19976 (x_output): Remove background_pixel and foreground_pixel fields.
19977 (x_display_info): Add new field TERMINAL. Remove KBOARD field.
19978 (x_delete_device, x_session_close): Declare.
19979
19980 * lread.c: Include setjmp.h. Update declaration of `read_char'.
19981 (read_filtered_event): Call `read_char' with a local
19982 `wrong_kboard_jmpbuf'.
19983
19984 * minibuf.c (read_minibuf): Call temporarily_switch_to_single_kboard.
19985 Don't call single_kboard_state. Use FRAME_RIF.
19986
19987 * process.c (Fmake_network_process): Don't unrequest_sigio on modern
19988 systems.
19989
19990 * lisp.h (set_process_environment): Rename to `set_global_environment'.
19991 (Fframe_with_environment, Fset_input_meta_mode)
19992 (Fset_quit_char): EXFUN.
19993 (x_create_device, tty_output, terminal, tty_display_info): Declare.
19994 (init_sys_modes, reset_sys_modes): Update prototypes.
19995 (init_all_sys_modes, reset_all_sys_modes): New prototypes.
19996
19997 * keyboard.h (struct kboard): Add new fields Vlocal_function_key_map,
19998 Vlocal_key_translation_map, and Vkeyboard_translate_table.
19999 (Vfunction_key_map, Vkeyboard_translate_table, single_kboard_state):
20000 Delete declarations.
20001 (Vfunction_key_map, Vkey_translation_map, push_kboard, pop_kboard)
20002 (temporarily_switch_to_single_kboard, tty_read_avail_input):
20003 New declarations.
20004
20005 * emacs.c (main): Don't call init_sys_modes(), the new term_init()
20006 already does that during init_display(). Call syms_of_keymap
20007 before syms_of_keyboard. Call `syms_of_terminal'.
20008 Call set_initial_environment, not set_process_environment.
20009 (shut_down_emacs): Call reset_all_sys_modes() instead of
20010 reset_sys_modes().
20011
20012 * xfaces.c (x_free_gc): Protect xassert with GLYPH_DEBUG.
20013 (internal_resolve_face_name, resolve_face_name_error): New functions.
20014 (resolve_face_name): Protect against loops and errors thrown by Fget.
20015 (realize_default_face): Don't use FRAME_FONT unless frame is an X frame.
20016 (Ftty_supports_face_attributes_p): Update tty_capable_p call.
20017
20018 * scroll.c: Replace CURTTY() with local variables throughout the
20019 file (where applicable).
20020 (calculate_scrolling, calculate_direct_scrolling)
20021 (scrolling_1, scroll_cost): Use the accessor macros for terminal
20022 characteristics.
20023
20024 * keymap.c (Vfunction_key_map): Remove.
20025 (Fdescribe_buffer_bindings): Update references to Vfunction_key_map.
20026 (syms_of_keymap): Remove DEFVAR for Vfunction_key_map.
20027 (Vkey_translation_map): Remove.
20028 (syms_of_keymap): Remove DEFVAR for key-translation-map.
20029 (Fdescribe_buffer_bindings)
20030 (read_key_sequence, init_kboard, syms_of_keyboard, mark_kboards):
20031 Update for terminal-local key-translation-map.
20032
20033 * Makefile.in (callproc.o): Update dependencies.
20034 (lisp, shortlisp): Add termdev.elc.
20035 (obj): Add terminal.o.
20036 (terminal.o): Add dependencies.
20037 [HAVE_CARBON]: Make terminal.o depend on macgui.h.
20038 (data.o, fns.o): Add termhooks.h dependency.
20039 (SOME_MACHINE_LISP): Add dnd.elc.
20040 (minibuf.o): Fix typo.
20041 Update dependencies.
20042
20043 * data.c (do_symval_forwarding, store_symval_forwarding)
20044 (find_symbol_value): Use the selected frame's keyboard, not
20045 current_kboard.
20046
20047 * .gdbinit (init_sys_modes): Use Vinitial_window_system instead of
20048 Vwindow_system.
20049
20050 * xmenu.c (Fx_menu_bar_open) [USE_X_TOOLKIT, USE_GTK]: Rename from
20051 Fmenu_bar_open.
20052 (syms_of_xmenu): Update defsubr.
20053 (mouse_position_for_popup, Fx_popup_menu)
20054 (Fx_popup_dialog, x_activate_menubar, update_frame_menubar)
20055 (set_frame_menubar, free_frame_menubar)
b97439ce 20056 (create_and_show_popup_menu, xmenu_show)
aac0c6e3
MR
20057 (create_and_show_dialog, xdialog_show, xmenu_show): Abort if not
20058 an X frame.
20059
20060 * xselect.c (x_own_selection): Abort if not an X frame.
20061 (some_frame_on_display): Check if it is an X frame.
20062 (x_handle_selection_clear): Deal with MULTI_KBOARD.
20063
20064 * coding.c: Include frame.h and termhooks.h.
20065 (terminal_coding, keyboard_coding): Delete.
20066 (Fset_terminal_coding_system_internal)
20067 (Fset_keyboard_coding_system_internal)
20068 (Fkeyboard_coding_system)
20069 (Fterminal_coding_system): Add a terminal parameter.
20070 Get terminal_coding from the terminal.
20071 (init_coding_once): Don't call setup_coding_system here.
20072
20073 * dispextern.h (set_scroll_region, turn_off_insert)
20074 (turn_off_highlight, background_highlight, clear_end_of_line_raw)
20075 (tty_clear_end_of_line, tty_setup_colors)
20076 (delete_tty, updating_frame)
20077 (produce_special_glyphs, produce_glyphs, write_glyphs)
20078 (insert_glyphs): Remove.
20079 (raw_cursor_to, clear_to_end, tty_turn_off_insert)
20080 (tty_turn_off_highlight, get_tty_size): Add declaration.
20081 (tabs_safe_p, init_baud_rate, get_tty_terminal): Update prototypes.
20082
20083 * frame.h (enum output_method): Add output_initial.
20084 (struct x_output): Delete.
20085 (FRAME_FOREGROUND_PIXEL, FRAME_BACKGROUND_PIXEL):
20086 Access foreground_pixel and background_pixel directly from the frame.
20087 (tty_display): Delete.
20088 (struct frame): Add buried_buffer_list, foreground_pixel,
20089 background_pixel and terminal. Delete kboard.
20090 (union output_data): Add tty.
20091 (FRAME_KBOARD): Get the kboard from the terminal.
20092 (FRAME_INITIAL_P): New macro.
20093 (Qtty, Qtty_type, Qterminal, Qterminal_live_p, Qenvironment)
20094 (Qterm_environment_variable, Qdisplay_environment_variable)
20095 (make_terminal_frame, Qburied_buffer_list, Qwindow_system):
20096 New declarations.
20097
20098 * termchar.h (tty_output, tty_display_info): New structures.
20099 (tty_list): Declare.
20100 (FRAME_TTY, CURTTY): New macros.
20101 (must_write_spaces, min_padding_speed, fast_clear_end_of_line)
20102 (line_ins_del_ok, char_ins_del_ok, scroll_region_ok)
20103 (scroll_region_cost, memory_below_frame, fast_clear_end_of_line)
20104 (dont_calculate_costs, no_redraw_on_reenter): Remove declarations.
20105
20106 * callproc.c: Include frame.h and termhooks.h, for terminal
20107 parameters.
20108 (add_env): New function.
20109 (child_setup): Use it.
20110 (child_setup, getenv_internal): Handle the new Vprocess_environment.
20111 (getenv_internal): Fix get_terminal_param call.
20112 (Fgetenv_internal, egetenv): Update doc.
20113 (syms_of_callproc): Initialize Vprocess_environment to nil.
20114 Register and initialize them. Remove obsolete defvars. Update doc
20115 strings.
20116 (child_setup): Handle Vlocal_environment_variables.
20117 (getenv_internal): Add terminal parameter.
20118 Handle Vlocal_environment_variables.
20119 (Fgetenv_internal): Add terminal parameter.
20120 (child_setup, getenv_internal, Fgetenv_internal): Store the local
20121 environment in a frame (not terminal) parameter. Update doc strings.
20122 (set_initial_environment): Rename from set_global_environment.
20123 Store Emacs environment in initial frame parameter.
20124
20125 * xdisp.c (redisplay_internal): Update references to
20126 `previous_terminal_frame'.
20127 (display_mode_line, Fformat_mode_line): Replace calls to
20128 `push_frame_kboard' with `push_kboard'.
20129 (get_glyph_string_clip_rects): Add extra parentheses and
20130 braces to prevent compiler warnings.
20131 (calc_pixel_width_or_height): Add xassert to check that the
20132 frame is alive. Don't call `lookup_image' on a termcap frame.
20133 (message2_nolog, message3_nolog, redisplay_internal)
20134 (set_vertical_scroll_bar, redisplay_window, check_x_display_info)
20135 (x_set_scroll_bar_foreground, x_set_scroll_bar_background)
20136 (Fx_create_frame, Fxw_display_color_p, Fx_display_grayscale_p)
20137 (Fx_display_pixel_width, Fx_display_pixel_height)
20138 (Fx_display_planes, Fx_display_color_cells)
20139 (Fx_server_max_request_size, Fx_server_vendor, Fx_server_version)
20140 (Fx_display_screens, Fx_display_mm_height, Fx_display_mm_width)
20141 (Fx_display_backing_store, Fx_display_visual_class)
20142 (Fx_display_save_under, Fx_close_connection, x_create_tip_frame):
20143 Use FRAME_TERMINAL_P, FRAME_WINDOW_P, FRAME_TTY and FRAME_RIF.
20144
20145 * xfns.c (x_set_foreground_color x_set_background_color)
20146 (x_set_mouse_color, x_set_cursor_color, x_make_gc):
20147 Use FRAME_BACKGROUND_PIXEL and FRAME_FOREGROUND_PIXEL.
20148 (Fx_create_frame, x_create_tip_frame, build_string, x_window)
20149 (Fx_create_frame, x_create_tip_frame): Don't create frames on a
20150 terminal that is being deleted.
20151 (Fx_create_frame): Use `store_frame_param' to set `window-system'
20152 frame parameter, and make sure it overrides any user-supplied setting.
20153 (Fx_close_connection, Fx_synchronize): Unify argument names with
20154 the rest of the DEFUNs.
20155
20156 * dispnew.c (Fsend_string_to_terminal): Update call to
20157 `get_tty_terminal'.
20158 (Fredraw_frame, Fsend_string_to_terminal)
20159 (Fsend_string_to_terminal, init_display): Use FRAME_RIF,
20160 FRAME_TERMCAP_P and FRAME_TTY.
20161 (window_change_signal): Don't believe width/height values that are
20162 impossibly small.
20163 (Vinitial_window_system): Rename from Vwindow_system.
20164 (termscript, Wcm, rif): Delete.
20165
20166 * termhooks.h (struct terminal): New struct containing the
20167 previously global text display hooks and new members NAME,
20168 DELETED and PARAM_ALIST.
20169 (FRAME_TERMINAL, TERMINAL_TERMINAL_CODING)
20170 (TERMINAL_KEYBOARD_CODING, TERMINAL_ACTIVE_P, FRAME_WINDOW_P)
20171 (FRAME_RIF): New macros.
20172 (get_terminal_param, get_device): New declarations.
20173 (termscript): Delete declaration.
20174
20175 * xterm.c (x_initialize): Use Fset_input_interrupt_mode.
20176 (XTflash, x_free_frame_resources, x_scroll_bar_create)
20177 (x_scroll_bar_set_handle): Use FRAME_BACKGROUND_PIXEL and
20178 FRAME_FOREGROUND_PIXEL.
20179 (x_fully_uncatch_errors): Disable definition.
20180 (x_scroll_bar_expose): Fix reference to foreground pixel.
20181 (XTread_socket): Disable loop on all X displays.
20182 (x_delete_terminal): Don't set terminal->deleted and let
20183 delete_terminal delete the frames on the terminal.
20184 (x_delete_display): Doc update to reflect changes in
20185 delete_terminal.
20186 (x_display_info) <terminal>: Move member earlier in the struct.
20187 (deleting_tty): Remove old variable.
20188 (Fsuspend_tty): Call clear_tty_hooks.
20189 (Fresume_tty, init_tty): Call set_tty_hooks.
20190 (Ftty_display_color_p, Ftty_display_color_cells): Don't throw
20191 errors on X frames.
20192 (x_catch_errors_unwind): Abort if x_error_message is NULL.
20193 (handle_one_xevent): Initialize `f' to NULL.
20194 (x_delete_terminal, x_create_terminal): New functions.
20195 (XTset_terminal_modes, XTreset_terminal_modes)
20196 (XTread_socket, x_connection_closed, x_term_init)
20197 (x_term_init, x_delete_display): Add terminal parameter.
20198 (x_term_init) [!HAVE_GTK_MULTIDISPLAY]: Refuse to create secondary
20199 X connections.
20200
20201 * frame.c: Include termchar.h.
20202 (Qterminal, Qterminal_live_p, Qburied_buffer_list, Qtty, Qtty_type)
20203 (Qwindow_system, Qenvironment, Qterm_environment_variable)
20204 (Qdisplay_environment_variable): New vars.
20205 (Fframep): Deal with output_initial.
20206 (Fframe-live-p): Doc fix.
20207 (Fwindow-system): New function.
20208 (x_set_screen_gamma, store_frame_param): Fix compilation errors.
20209 (make_terminal_frame): Don't create frames on a terminal that is
20210 being deleted. Use FRAME_BACKGROUND_PIXEL and FRAME_FOREGROUND_PIXEL.
20211 (store_frame_param): Check for found_for_frame before calling XFRAME.
20212 (Fmake_terminal_frame): Handle NULL tty names correctly.
20213 (syms_of_frame): Enhance doc string of `default-frame-alist'.
20214 (Fdelete_frame): Remove unused variable `count'. Don't allow other
20215 frames to refer to a deleted frame in their 'environment parameter.
20216 (Fframe_with_environment): New function.
20217 (syms_of_frame): Defsubr it. Initialize and staticpro Qenvironment.
20218 (get_future_frame_param): New function.
20219 (Fmake_terminal_frame): Use it.
20220 (x_set_frame_parameters, x_set_screen_gamma): Use FRAME_RIF.
20221
20222 * sysdep.c (init_sys_modes, reset_sys_modes): Update for renames.
20223 * sysdep.c (reset_sys_modes): Update for renames.
20224
20225 * keyboard.c (tty_read_avail_input): New function.
20226 (Fset_input_interrupt_mode, Fset_output_flow_control): New functions.
20227 (syms_of_keyboard): Defsubr them.
20228 (Fset_input_meta_mode, Fset_quit_char): New functions.
20229 (Fset_input_mode): Split to above functions.
20230 (read_char_minibuf_menu_prompt): Add wrong_kboard_jmpbuf
20231 parameter. Use it in call to `read_char'.
20232 (read_char): Declare. Update call to `read_char_minibuf_menu_prompt'.
20233 Set wrong_kboard_jmpbuf correctly in recursive calls.
20234 Use current_kboard to access Vkeyboard_translate_table.
20235 Enhance comment before extra longjmp to wrong_kboard_jmpbuf.
20236 Add wrong_kboard_jmpbuf parameter to allow for recursive calls.
20237 Update longjmp invocations. Remember the original current_kboard,
20238 and longjmp to `wrong_kboard_jmpbuf' when a filter, timer or sentinel
20239 changes it. Comment out unnecessary calls to
20240 `record_single_kboard_state' and `any_kboard_state'.
20241 Update recursive calls.
20242 (wrong_kboard_jmpbuf): Remove global variable.
20243 (read_key_sequence): Remove unused variable wrong_kboard_jmpbuf.
20244 Handle deleted interrupted_kboards correctly; that is a legal
20245 case. Add `wrong_kboard_jmpbuf' local variable. Update setjmp
20246 and read_char calls. Abort if interrupted_kboard died in read_char.
20247 (any_kboard_state, single_kboard_state)
20248 (push_frame_kboard): Remove function.
20249 (pop_kboard): Switch out of single_kboard mode if the kboard has
20250 been deleted. Remove unused variable. Help debugging by not
20251 changing current_kboard unnecessarily. Set current_kboard to the
20252 kboard of the selected frame when the stored kboard object has
20253 been deleted before pop_kboard.
20254 (temporarily_switch_to_single_kboard): Change first parameter to a
20255 frame pointer. Throw an error when caller wants to change kboards
20256 while in single_kboard mode. Don't push_kboard if we weren't in
20257 single kboard state. Don't pop_kboard if we popped into any
20258 kboard state.
20259 (restore_kboard_configuration): Abort if pop_kboard changed the
20260 kboard in single_kboard mode. Call pop_kboard only after setting
20261 up single_kboard mode.
20262 (Frecursive_edit): Switch to single_kboard mode only in nested
20263 command loops.
20264 (cmd_error, command_loop, command_loop_1, timer_check):
20265 Comment out unnecessary call to `any_kboard_state' and
20266 `record_single_kboard_state'.
20267 (delete_kboard): Exit single_kboard mode if we have just deleted
20268 that kboard. Use FRAME_KBOARD.
20269 (interrupt_signal): Use `Fkill_emacs' to exit Emacs, not
20270 `fatal_error_signal'.
20271 (record_single_kboard_state): Don't push_kboard if we weren't in
20272 single kboard state. Don't pop_kboard if we popped into any
20273 kboard state.
20274 (push_frame_kboard): Rename to push_kboard.
20275 (kbd_buffer_get_event): Use FRAME_TERMINAL.
20276 (read_avail_input): Read input from all terminals.
20277 (mark_kboards): Also mark Vkeyboard_translate_table.
20278 (kbd_buffer_store_event_hold): Simplify condition.
20279 (read_key_sequence): Reinitialize fkey and keytran at each replay.
20280 (Vkeyboard_translate_table): Move to struct kboard.
20281 (init_kboard): Initialize Vkeyboard_translate_table.
20282 (syms_of_keyboard): Use DEFVAR_KBOARD to define
20283 Vkeyboard_translate_table. Update doc strings. Update docs of
20284 local-function-key-map and function-key-map.
20285
20286 * terminal.c: New file.
20287
20288 * term.c: Include errno.h.
20289 (Vring_bell_function, device_list, initial_device)
20290 (next_device_id, ring_bell, update_begin, update_end)
20291 (set_terminal_window, cursor_to, raw_cursor_to)
20292 (clear_to_end, clear_frame, clear_end_of_line)
20293 (write_glyphs, insert_glyphs, delete_glyphs, ins_del_lines)
20294 (Fdisplay_name, create_device, delete_device): Move to terminal.c.
20295 (syms_of_term): Move their initialization to terminal.c.
20296 (get_tty_terminal, Fdisplay_tty_type, Ftty_display_color_p)
20297 (Ftty_display_color_cells)
20298 (Ftty_no_underline, Fsuspend_tty, Fresume_tty, create_tty_output)
20299 (clear_tty_hooks, set_tty_hooks)
20300 (init_tty, maybe_fatal): New functions.
20301 (Ftty_type): Return nil if terminal is not on a tty instead of
20302 throwing an error. Doc update.
20303 (syms_of_term) <Vsuspend_tty_functions, Vresume_tty_functions>:
20304 Doc update. Initialize new subrs and variables.
20305 (delete_tty): Use terminal->deleted.
20306 (tty_set_terminal_modes): Rename from set_terminal_modes.
20307 (tty_reset_terminal_modes): Rename from reset_terminal_modes.
20308 (set_scroll_region): Rename to `tty_set_scroll_region'.
20309 (turn_on_insert): Rename to `tty_turn_on_insert'.
20310 (turn_off_insert): Rename to `tty_turn_off_insert'.
20311 (turn_off_highlight): Rename to `tty_turn_off_highlight'.
20312 (turn_on_highlight): Rename to `tty_turn_on_highlight'.
20313 (toggle_highligh): Rename to `tty_toggle_highlight'.
20314 (background_highlight): Rename to `tty_background_highlight'.
20315 (highlight_if_desired): Rename to `tty_highlight_if_desired'.
20316 (tty_ring_bell, tty_update_end, tty_set_terminal_window)
20317 (tty_set_scroll_region, tty_background_highlight)
20318 (tty_cursor_to, tty_raw_cursor_to, tty_clear_to_end)
20319 (tty_clear_frame, tty_clear_end_of_line, tty_write_glyphs)
20320 (tty_insert_glyphs, tty_delete_glyphs, tty_ins_del_lines)
20321 (term_get_fkeys, tty_setup_colors, dissociate_if_controlling_tty):
20322 Add static modifier.
20323 (tty_reset_terminal_modes, tty_set_terminal_window)
20324 (tty_set_scroll_region, tty_background_highlight)
20325 (tty_highlight_if_desired, tty_cursor_to)
20326 (tty_raw_cursor_to, tty_clear_to_end, tty_clear_frame)
20327 (tty_clear_end_of_line, tty_write_glyphs, tty_insert_glyphs)
20328 (tty_delete_glyphs, tty_ins_del_lines, turn_on_face): Update for
20329 renames.
20330
203312007-08-28 Jan Djärv <jan.h.d@swipnet.se>
20332
20333 * keyboard.c: Qrtl is new.
20334 (parse_tool_bar_item): Handle :rtl keyword.
20335 (syms_of_keyboard): Intern :rtl keyword.
20336
20337 * dispextern.h (enum tool_bar_item_idx): Add TOOL_BAR_ITEM_RTL_IMAGE.
20338
20339 * gtkutil.c (xg_tool_bar_expose_callback): Just do SET_FRAME_GARBAGED
20340 so no Lisp code is executed.
20341 (file_for_image, find_rtl_image): New functions.
20342 (xg_get_image_for_pixmap): Use file_for_image.
20343 (update_frame_tool_bar): If direction is RTL, use RTL image if
20344 defined. Use Gtk stock images if defined.
20345
203462007-08-27 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
20347
20348 * macterm.c (x_draw_composite_glyph_string_foreground): Draw rectangle
20349 for nonexistent or zero-width glyph in composition glyph.
20350
203512007-08-25 Stefan Monnier <monnier@iro.umontreal.ca>
20352
20353 * m/amdx86-64.h: Redirect to intel386.h if compiling for i386.
20354
20355 * xdisp.c (Finvisible_p): New function.
20356 (syms_of_xdisp): defsubr it.
20357
203582007-08-24 Juanma Barranquero <lekktu@gmail.com>
20359
20360 * image.c (syms_of_image) <image-library-alist, cross-disabled-images>:
20361 Doc fixes.
20362
203632007-08-24 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
20364
20365 * mac.c [MAC_OSX] (select_and_poll_event, sys_select): Fix last changes.
20366
203672007-08-24 Martin Rudalics <rudalics@gmx.at>
20368
20369 * fileio.c (Finsert_file_contents): Consult CHARS_MODIFF to tell
20370 whether decoding has modified buffer contents.
20371
203722007-08-24 Jason Rumney <jasonr@gnu.org>
20373
20374 * image.c [HAVE_NTGUI]: Define dynamic loaded functions for SVG.
20375 (Qgdk_pixbuf, Qglib) [HAVE_NTGUI]: New symbols.
20376 (syms_of_image) [HAVE_NTGUI]: Intern and staticpro them.
20377 (init_svg_functions) [HAVE_NTGUI]: New function.
20378 (fn_g_type_init, fn_g_object_unref, fn_g_error_free): New #defines.
20379 (svg_load_image): Use them.
20380 (svg_load_image) [HAVE_NTGUI]: Implement background.
20381
203822007-08-23 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
20383
20384 * Makefile.in (RSVG_LIBS, RSVG_CFLAGS): New variables.
20385 (ALL_CFLAGS): Use ${RSVG_CFLAGS} instead of @RSVG_CFLAGS@.
20386 (LIBX): Remove @RSVG_LIBS@.
20387 (LIBES): Add $(RSVG_LIBS).
20388
20389 * image.c (svg_load_image): Blend with specified background if exists.
20390 Use IMAGE_BACKGROUND. Add Mac OS Support.
20391
20392 * mac.c (wakeup_from_rne_enabled_p) [MAC_OSX]: Remove variable.
20393 (ENABLE_WAKEUP_FROM_RNE, DISABLE_WAKEUP_FROM_RNE) [MAC_OSX]:
20394 Remove macros.
20395 [MAC_OSX] (socket_callback): Do nothing.
20396 [MAC_OSX] (select_and_poll_event): Use CFRunLoopRunInMode instead of
20397 ReceiveNextEvent.
20398 [MAC_OSX] (sys_select): Likewise. Don't set context as argument to
20399 socket_callback.
20400 (mac_wakeup_from_rne) [MAC_OSX]: Do nothing.
20401
204022007-08-22 Glenn Morris <rgm@gnu.org>
20403
20404 * image.c (x_find_image_file): Search in etc/images/ rather than etc/.
20405
204062007-08-22 Paul Pogonyshev <pogonyshev@gmx.net>
20407
20408 * Makefile.in (ALL_CFLAGS, LIBX): Add RSVG_LIBS.
20409
20410 * image.c: Add support for SVG images. Some additional comments
20411 by Joakim Verona <joakim@verona.se>. When HAVE_RSVG is defined:
20412 (svg_image_p): New function to test for SVG image.
20413 (svg_load): New function to load SVG image.
20414 (svg_load_image): New function, helper for svg_load.
20415 (Qsvg): New Lisp_object.
20416 (svg_keyword_index): New enum.
20417 (svg_format): New static `image_keyword' struct.
20418 (svg_type): New static `image_type' struct.
20419 (librsvg/rsvg.h): Include it.
20420
204212007-08-23 Stefan Monnier <monnier@iro.umontreal.ca>
20422
20423 * lread.c (load_warn_old_style_backquotes): Fix up array size typo.
20424
204252007-08-22 Stefan Monnier <monnier@iro.umontreal.ca>
20426
20427 * lread.c (Qold_style_backquotes): New var.
20428 (syms_of_lread): Init and staticpro it.
20429 (load_warn_old_style_backquotes): New fun.
20430 (Fload): Use them to warn about old style backquotes.
20431 (end_of_file_error, Fload): Remove unused vars.
20432
20433 * lisp.h (Fclear_face_cache, Fx_send_client_event): Declare.
20434
20435 * lread.c (Vold_style_backquotes): New var.
20436 (syms_of_lread): Init and export it to Elisp.
20437 (read1): Set it when we find an old-style (back)quote.
20438
204392007-08-22 Jason Rumney <jasonr@gnu.org>
20440
20441 * w32reg.c (SYSTEM_DEFAULT_RESOURCES): Add missing NULL terminator.
20442
204432007-08-22 Katsumi Yamaoka <yamaoka@jpl.org>
20444
20445 * puresize.h (BASE_PURESIZE): Increase to 1140000.
20446
204472007-08-19 Richard Stallman <rms@gnu.org>
20448
20449 * eval.c (Ffunction, Fquote): Signal error if not 1 argument.
20450
204512007-08-19 Andreas Schwab <schwab@suse.de>
20452
20453 * alloc.c (pure): Round PURESIZE up.
20454
204552007-08-17 Jan Djärv <jan.h.d@swipnet.se>
20456
20457 * xterm.c (handle_one_xevent): Remove check that mouse click is in
20458 active frame.
20459
204602007-08-16 Richard Stallman <rms@gnu.org>
20461
20462 * eval.c (Fcommandp): Add parens to clarify.
20463
20464 * minibuf.c (Fall_completions): Use enum for type of table.
20465
20466 * emacs.c (USAGE2): Improve text.
20467
204682007-08-15 Philippe Waroquiers <philippe.waroquiers@eurocontrol.int>
20469
20470 * term.c (tty_default_color_capabilities): Declare static
20471 variables in file scope, to avoid HPUX compiler problem.
20472
204732007-08-13 Jan Djärv <jan.h.d@swipnet.se>
20474
20475 * gtkutil.c (update_frame_tool_bar): Use -1 as index
20476 to gtk_toolbar_insert.
20477
204782007-08-13 Stefan Monnier <monnier@iro.umontreal.ca>
20479
20480 * fileio.c (Finsert_file_contents): Yet Another Int/Lisp_Object Mixup.
20481
20482 * insdel.c (reset_var_on_error): New fun.
20483 (signal_before_change, signal_after_change):
20484 Use it to reset (after|before)-change-functions to nil in case of error.
20485 Bind inhibit-modification-hooks to t.
20486 Don't bind (after|before)-change-functions to nil while they run.
20487
204882007-08-11 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
20489
20490 * xterm.c (x_draw_image_glyph_string): Adjust stipple origin when
20491 filling pixmap with stippled background.
20492
204932007-08-10 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
20494
20495 * macterm.c [TARGET_API_MAC_CARBON] (mac_handle_window_event):
20496 Don't use invisible frame as parent window for repositioning.
20497
204982007-08-10 Stefan Monnier <monnier@iro.umontreal.ca>
20499
20500 * print.c (new_backquote_output): Rename from old_backquote_output.
20501 (print): Inverse its logic (according to its name) so as to match the
20502 behavior of new_backquote_flag in lread.c.
20503
205042007-08-09 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
20505
20506 * gmalloc.c (posix_memalign): New function.
20507
20508 * macterm.c (frame_highlight, frame_unhighlight): Don't call
20509 ActivateControl/DeactivateControl here.
20510 [USE_MAC_TOOLBAR] (free_frame_tool_bar): Suppress animation when
20511 frame-notice-user-settings is non-nil.
20512 [USE_MAC_FONT_PANEL] (mac_handle_font_event): Also record parameter
20513 for kEventParamFMFontStyle.
20514 [TARGET_API_MAC_CARBON] (mac_handle_keyboard_event): Don't check
20515 mac_pass_command_to_system and mac_pass_control_to_system here.
20516 (XTread_socket): Call ActivateControl/DeactivateControl here.
20517 (XTread_socket) [TARGET_API_MAC_CARBON]:
20518 Check mac_pass_command_to_system and mac_pass_control_to_system here.
20519 (mac_handle_window_event) [USE_MAC_TOOLBAR]: Add further workaround
20520 for window repositioning.
20521
205222007-08-08 Glenn Morris <rgm@gnu.org>
20523
20524 * Replace `iff' in doc-strings and comments.
20525
205262007-08-07 Chong Yidong <cyd@stupidchicken.com>
20527
20528 * xdisp.c (move_it_by_lines): Remove incorrect optimization.
20529
205302007-08-07 Martin Rudalics <rudalics@gmx.at>
20531
20532 * fileio.c (Finsert_file_contents): Run format-decode and
20533 after_insert_file_functions on entire buffer when REPLACE is
20534 non-nil and inhibit modification_hooks and point_motion_hooks.
20535 For consistency, run after_insert_file_functions iff something
20536 got inserted. Move signal_after_change and update_compositions
20537 after code running after_insert_file_functions. Make sure that
20538 undo_list doesn't record intermediate steps of the decoding process.
20539
205402007-08-07 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
20541
20542 * emacs.c (main)
20543 [HAVE_GTK_AND_PTHREAD && !SYSTEM_MALLOC && !DOUG_LEA_MALLOC]:
20544 Call malloc_enable_thread on interactive startup.
20545
20546 * gmalloc.c (_malloc_thread_enabled_p) [USE_PTHREAD]: New variable.
20547 (LOCK, UNLOCK, LOCK_ALIGNED_BLOCKS, UNLOCK_ALIGNED_BLOCKS)
20548 [USE_PTHREAD]: Conditionalize with it.
20549 (malloc_atfork_handler_prepare, malloc_atfork_handler_parent)
20550 (malloc_atfork_handler_child, malloc_enable_thread) [USE_PTHREAD]:
20551 New functions.
20552
205532007-08-06 Chong Yidong <cyd@stupidchicken.com>
20554
20555 * xdisp.c (redisplay_window): When restoring original buffer
20556 position, make sure it is still valid.
20557
20558 * image.c (png_load): Ignore png-supplied background color.
20559
205602007-08-06 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
20561
20562 * mac.c [TARGET_API_MAC_CARBON] (cfdate_to_lisp): Obtain microsec value.
20563 Use kCFAbsoluteTimeIntervalSince1970.
20564
20565 * macmenu.c (quit_dialog_event_loop) [TARGET_API_MAC_CARBON]:
20566 New variable.
20567 [TARGET_API_MAC_CARBON] (mac_handle_dialog_event): Set it if dialog
20568 event loop should be quit.
20569 [TARGET_API_MAC_CARBON] (create_and_show_dialog) [!MAC_OSX]:
20570 Quit dialog event loop if quit_dialog_event_loop is set.
20571
20572 * macselect.c [!TARGET_API_MAC_CARBON]: Include Scrap.h.
20573 (Selection): New typedef. Use instead of ScrapRef.
20574 (mac_get_selection_from_symbol): Rename from get_scrap_from_symbol.
20575 (mac_valid_selection_target_p): Rename from valid_scrap_target_type_p.
20576 (mac_clear_selection): Rename from clear_scrap.
20577 (get_flavor_type_from_symbol): New argument SEL and subsume function of
20578 scrap_has_target_type. All uses changed.
20579 (mac_get_selection_ownership_info, mac_valid_selection_value_p)
20580 (mac_selection_has_target_p): New functions.
20581 (mac_put_selection_value): Rename from put_scrap_string.
20582 (mac_get_selection_value): Rename from get_scrap_string.
20583 (mac_get_selection_target_list): Rename from get_scrap_target_type_list.
20584 (put_scrap_private_timestamp, scrap_has_target_type)
20585 (get_scrap_private_timestamp): Remove functions.
20586 (SCRAP_FLAVOR_TYPE_EMACS_TIMESTAMP): Remove define.
20587 (x_own_selection, x_get_local_selection):
20588 Use mac_valid_selection_value_p.
20589 (x_own_selection): Don't use put_scrap_private_timestamp.
20590 Record OWNERSHIP-INFO into Vselection_alist instead.
20591 (x_get_local_selection): Don't check type if request is local.
20592 (Fx_selection_owner_p): Don't use get_scrap_private_timestamp.
20593 Detect ownership change with OWNERSHIP-INFO in Vselection_alist instead.
20594
205952007-08-04 Jan Djärv <jan.h.d@swipnet.se>
20596
20597 * gtkutil.c (xg_tool_bar_callback): Generate two TOOL_BAR_EVENT:s,
20598 add comment explaining why.
20599
206002007-08-03 Richard Stallman <rms@gnu.org>
20601
20602 * fileio.c (Fvisited_file_modtime): Use make_time.
20603
206042007-08-01 Ryo Yoshitake <ryo@shiftmode.net> (tiny change)
20605
20606 * mac.c (init_mac_osx_environment): Adjust load-path on self-contained
20607 build.
20608
206092007-07-31 Stefan Monnier <monnier@iro.umontreal.ca>
20610
20611 * gtkutil.c (xg_tool_bar_callback): Generate a single TOOL_BAR_EVENT.
20612
206132007-07-30 Katsumi Yamaoka <yamaoka@jpl.org>
20614
20615 * puresize.h (BASE_PURESIZE): Increase to 1130000.
20616
206172007-07-30 Richard Stallman <rms@gnu.org>
20618
20619 * lread.c (readevalloop, read1): Treat NBSP as whitespace.
20620
206212007-07-29 Jan Djärv <jan.h.d@swipnet.se>
20622
20623 * gmalloc.c (__malloc_initialize): Remove pthread_once. Not needed.
20624
206252007-07-28 Nick Roberts <nickrob@snap.net.nz>
20626
20627 * xdisp.c (decode_mode_spec): Use '@' instead of 'R' to test for
20628 remote default-directory.
20629
20630 * buffer.c (mode-line-format): Update doc string.
20631
206322007-07-27 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
20633
20634 * w32term.c (w32_draw_fringe_bitmap): Extend fringe background to
20635 scroll bar gap.
20636 (x_scroll_bar_create): Set bar->fringe_extended_p.
20637 (w32_set_vertical_scroll_bar): Put leftmost/rightmost scroll bars
20638 on frame edge. Check fringe background extension. Don't clear
20639 extended fringe background area.
20640
20641 * w32term.h (struct scroll_bar): New member fringe_extended_p.
20642 (w32_fill_area): Enclose multiple statements with do ... while (0).
20643
20644 * xterm.c (x_draw_fringe_bitmap) [USE_TOOLKIT_SCROLL_BARS]:
20645 Extend fringe background to scroll bar gap.
20646 (x_scroll_bar_create) [USE_TOOLKIT_SCROLL_BARS]:
20647 Set bar->fringe_extended_p.
20648 (XTset_vertical_scroll_bar) [USE_TOOLKIT_SCROLL_BARS]:
20649 Put leftmost/rightmost scroll bars on frame edge. Check fringe
20650 background extension. Don't clear extended fringe background area.
20651
20652 * xterm.h (struct scroll_bar) [USE_TOOLKIT_SCROLL_BARS]:
20653 New member fringe_extended_p.
20654
206552007-07-25 Glenn Morris <rgm@gnu.org>
20656
20657 * Relicense all FSF files to GPLv3 or later.
20658
20659 * COPYING: Switch to GPLv3.
20660
206612007-07-25 Stefan Monnier <monnier@iro.umontreal.ca>
20662
20663 * eval.c (Fcommandp): Pay attention to the `interactive-form' property.
20664
20665 * data.c (Finteractive_form): Check for the presence of an
20666 `interactive-form' symbol property more thoroughly.
20667
20668 * data.c (Finteractive_form): Use an `interactive-form' property if
20669 present, analogous to the function-documentation property.
20670
206712007-07-24 Jason Rumney <jasonr@gnu.org>
20672
20673 * w32fns.c (x_real_positions): Get real position from OS instead of
20674 calculating it.
20675
206762007-07-23 Jason Rumney <jasonr@gnu.org>
20677
20678 * filelock.c (current_lock_owner): Allow for @ sign in username.
20679
206802007-07-22 Nick Roberts <nickrob@snap.net.nz>
20681
20682 * xdisp.c (decode_mode_spec): Add case 'R' for to test for
20683 remote default-directory.
20684
20685 * buffer.c (mode-line-format): Describe above case in doc string.
20686
206872007-07-20 Eli Zaretskii <eliz@gnu.org>
20688
20689 * w32proc.c (IMAGE_NT_OPTIONAL_HDR32_MAGIC, IMAGE_OPTIONAL_HEADER32):
20690 Define if not defined.
20691
206922007-07-18 Jason Rumney <jasonr@gnu.org>
20693
20694 * w32proc.c (w32_executable_type): Handle 64 bit executables.
20695
206962007-07-18 Richard Stallman <rms@gnu.org>
20697
20698 * data.c (Fsetq_default): Doc fix.
20699
20700 * eval.c (Fsetq): Doc fix.
20701
207022007-07-18 Juanma Barranquero <lekktu@gmail.com>
20703
20704 * coding.c (Ffind_operation_coding_system):
20705 * eval.c (For, Fand): Doc fixes.
20706 Reported by Johan Bockgård.
20707
207082007-07-18 Jan Djärv <jan.h.d@swipnet.se>
20709
20710 * xfns.c (Fx_focus_frame): Call x_ewmh_activate_frame.
20711
20712 * xterm.h: Declare x_ewmh_activate_frame.
20713
20714 * xterm.c (x_ewmh_activate_frame): New function.
20715 (XTframe_raise_lower): Move code to x_ewmh_activate_frame.
20716
207172007-07-17 Martin Rudalics <rudalics@gmx.at>
20718
20719 * window.c (Fdisplay_buffer): If largest or LRU window is the
20720 only window, split it even if it is not eligible for splitting.
20721 This restores the original behavior broken by the 2007-07-15
20722 change.
20723
207242007-07-17 Glenn Morris <rgm@gnu.org>
20725
20726 * abbrev.c (abbrev_check_chars): New function.
20727 (Fdefine_global_abbrev, Fdefine_mode_abbrev):
20728 Call abbrev_check_chars to check abbrev characters are word
20729 constituents. Doc fix.
20730
207312007-07-17 Stefan Monnier <monnier@iro.umontreal.ca>
20732
20733 * process.c (Fstart_process, Fmake_network_process)
20734 (read_process_output): Fix up last changes.
20735
207362007-07-16 Eli Zaretskii <eliz@gnu.org>
20737
20738 * makefile.w32-in (clean): Don't delete *~.
20739
207402007-07-16 Andreas Schwab <schwab@suse.de>
20741
20742 * window.c (Fdisplay_buffer): Use NILP.
20743 (Fset_window_scroll_bars): Likewise.
20744
207452007-07-15 Martin Rudalics <rudalics@gmx.at>
20746
20747 * window.c (window_min_size_2): New function.
20748 (window_min_size_1, size_window, Fdisplay_buffer)
20749 (Fsplit_window, adjust_window_trailing_edge): Use it to avoid
20750 windows without mode- or header-lines when window-min-height is
20751 too small.
20752 (size_window): Reset nodelete_p after testing it, following an
20753 earlier note by Kim F. Storm.
20754 (display_buffer): Do not set split_height_threshold to twice the
20755 value of window_min_height to avoid changing the value of a
20756 customizable variable. Rather explicitly check whether the
20757 height of the window that shall be splitted is at least as large
20758 as split_height_threshold.
20759 (Fwindow_full_width_p): New defun.
20760 (syms_of_window): Defsubr it.
20761
20762 * window.h: Add EXFUN for Fwindow_full_width_p.
20763
207642007-07-14 Jason Rumney <jasonr@gnu.org>
20765
20766 * process.c [WINDOWSNT]: Don't undefine AF_INET6.
20767
207682007-07-14 Richard Stallman <rms@gnu.org>
20769
20770 * eval.c (maybe_call_debugger): New function.
20771 (find_handler_clause): Use maybe_call_debugger.
20772 Call it when the handler says `debug'.
20773 Eliminate DEBUGGER_VALUE_PTR.
20774 (Fsignal): Eliminate debugger_value.
20775 (Qdebug): New variable.
20776 (syms_of_eval): Initialize it.
20777
207782007-07-14 Juanma Barranquero <lekktu@gmail.com>
20779
20780 * eval.c (Fprogn):
20781 * keyboard.c (Ftrack_mouse):
20782 * print.c (Fwith_output_to_temp_buffer):
20783 * window.c (Fsave_window_excursion): Doc fix.
20784
207852007-07-13 Stefan Monnier <monnier@iro.umontreal.ca>
20786
20787 * eval.c (init_eval_once): Bump max_lisp_eval_depth to 400.
20788
207892007-07-12 Stefan Monnier <monnier@iro.umontreal.ca>
20790
20791 * process.h (struct Lisp_Process): Turn slots infd, outfd,
20792 kill_without_query, pty_flag, tick, update_tick, decoding_carryover,
20793 inherit_coding_system_flag, filter_multibyte, adaptive_read_buffering,
20794 read_output_delay, and read_output_skip from Lisp_Objects to ints.
20795 Remove unused encoding_carryover.
20796 * process.c: Adjust all functions accordingly.
20797
207982007-07-12 Richard Stallman <rms@gnu.org>
20799
20800 * term.c: Include unistd.h only if HAVE_UNISTD_H.
20801
208022007-07-11 Jason Rumney <jasonr@gnu.org>
20803
20804 * makefile.w32-in (LIBS): Include OLE32.
20805
20806 * w32fns.c (w32_msg_pump) <WM_EMACS_CREATEWINDOW>: Initialize COM.
20807 (w32_msg_pump) <WM_DESTROY>: Uninitialize COM.
20808
208092007-07-11 Stefan Monnier <monnier@iro.umontreal.ca>
20810
20811 * lisp.h (struct Lisp_Hash_Table): Turn next_weak into a bare pointer.
20812 * fns.c (weak_hash_tables): Rename from Vweak_hash_tables and turned
20813 from a Lisp_Object into a bare pointer.
20814 (make_hash_table, copy_hash_table, sweep_weak_hash_tables, init_fns):
20815 Adjust the code correspondingly.
20816
20817 * alloc.c (emacs_blocked_free): Remove unused var `bytes_used_now'.
20818
20819 * term.c: Include unistd.h for ttyname, used in handle_one_term_event.
20820 (term_show_mouse_face): Remove unused var `j'.
20821 (handle_one_term_event): Remove unused vars `i' and `j'.
20822 Don't cast return value of ttyname since it's not necessary.
20823
208242007-07-10 Stefan Monnier <monnier@iro.umontreal.ca>
20825
20826 * alloc.c (mark_maybe_pointer): Enforce mult-of-8 alignment when using
20827 USE_LSB_TAG. Suggested by Dmitry Antipov <dmantipov@yandex.ru>.
20828
20829 * fns.c (map_char_table): Use an array of int for `indices' rather than
20830 an array of Lisp_Objects (which are only ever integers anyway).
20831 (Fmap_char_table): Update caller.
20832 * lisp.h: Update prototype.
20833 * keymap.c (Fset_keymap_parent, map_keymap, Fcopy_keymap):
20834 * fontset.c (Ffontset_info):
20835 * casetab.c (set_case_table): Update callers.
20836
20837 * editfns.c (Ftranspose_regions): Use EMACS_INT for positions.
20838
20839 * keymap.c (struct accessible_keymaps_data)
20840 (struct where_is_internal_data): New structures.
20841 (accessible_keymaps_1, where_is_internal_1): Use them to change
20842 interface to adhere to the one used by map_keymap.
20843 (Faccessible_keymaps, where_is_internal): Use map_keymap.
20844 (accessible_keymaps_char_table, where_is_internal_2): Remove.
20845
20846 * keymap.h (map_keymap_function_t): More informative prototype.
20847
208482007-07-10 Guanpeng Xu <herberteuler@hotmail.com>
20849
20850 * search.c (Vinhibit_changing_match_data, search_regs_1): New vars.
20851 (looking_at_1): Don't change search_regs and last_thing_searched
20852 if `inhibit-changing-match-data' is non-nil.
20853 (string_match_1, search_buffer, set_search_regs): Likewise.
20854 (syms_of_search): Add Lisp level definition for
20855 `inhibit-changing-match-data' and set it to nil.
20856 (boyer_moore): If `inhibit-changing-match-data' is non-nil, compute
20857 start and end of the match, instead of using values in search_regs.
20858
208592007-07-01 Stefan Monnier <monnier@iro.umontreal.ca>
20860
20861 * minibuf.c (Fcompleting_read): New value `confirm-only'
20862 for `require-match'.
20863
208642007-06-28 Stefan Monnier <monnier@iro.umontreal.ca>
20865
20866 * fileio.c (Fdo_auto_save): Revert last patch installed unwillingly as
20867 part of the 2007-06-27 change to syms_of_fileio.
20868
208692007-06-28 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
20870
20871 * macterm.c [USE_MAC_TSM] (mac_handle_text_input_event):
20872 Check WINDOWP before using XWINDOW. Consolidate return statements.
20873
208742007-06-27 Richard Stallman <rms@gnu.org>
20875
20876 * fileio.c (syms_of_fileio) <after-insert-file-functions>: Doc fix.
20877
208782007-06-27 Juanma Barranquero <lekktu@gmail.com>
20879
20880 * buffer.c (syms_of_buffer) <selective-display>: Fix typo in docstring.
20881
208822007-06-26 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
20883
20884 * gmalloc.c [HAVE_GTK_AND_PTHREAD]: Check this after including config.h.
20885 (_aligned_blocks_mutex) [USE_PTHREAD]: New variable.
20886 (LOCK_ALIGNED_BLOCKS, UNLOCK_ALIGNED_BLOCKS): New macros.
20887 (_free_internal, memalign): Use them.
20888 (_malloc_mutex, _aligned_blocks_mutex) [USE_PTHREAD]:
20889 Initialize to PTHREAD_MUTEX_INITIALIZER.
20890 (malloc_initialize_1) [USE_PTHREAD]: Don't use recursive mutex.
20891 (morecore_nolock): Rename from morecore. All uses changed.
20892 Use only nolock versions of internal allocation functions.
20893 (_malloc_internal_nolock, _realloc_internal_nolock)
20894 (_free_internal_nolock): New functions created from
20895 _malloc_internal, _realloc_internal, and _free_internal.
20896 (_malloc_internal, _realloc_internal, _free_internal): Use them.
20897 Copy hook value to automatic variable before its use.
20898 (memalign): Copy hook value to automatic variable before its use.
20899
209002007-06-26 Kenichi Handa <handa@m17n.org>
20901
20902 * coding.c (Ffind_operation_coding_system): Docstring improved.
20903 (syms_of_coding): Docstring of `file-coding-system-alist' improved.
20904
209052007-06-25 David Kastrup <dak@gnu.org>
20906
20907 * keymap.c (Fcurrent_active_maps): Add `position' argument.
20908 (Fwhere_is_internal): Adjust call to `current-active-maps' to
20909 cater for additional parameter.
20910
20911 * keymap.h: Adjust number of parameters to `current-active-maps'.
20912
20913 * doc.c (Fsubstitute_command_keys): Adjust call of
20914 `current-active-maps'.
20915
209162007-06-25 David Kastrup <dak@gnu.org>
20917
20918 * callint.c (Fcall_interactively): Make the parsing of interactive
20919 specs somewhat more readable.
20920
209212007-06-23 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
20922
20923 * macterm.c (x_draw_fringe_bitmap) [MAC_OSX]: Extend fringe background
20924 to scroll bar gap also when bitmap fills fringe. Draw only foreground
20925 if extended background has already been filled.
20926
209272007-06-22 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
20928
20929 * macgui.h (USE_CG_DRAWING): Don't require USE_ATSUI.
20930 (USE_MAC_TOOLBAR): Require USE_CG_DRAWING.
20931
20932 * macmenu.c (mac_dialog_modal_filter, Fx_popup_dialog) [MAC_OSX]:
20933 Put special treatment for Fmessage_box, Fyes_or_no_p, and Fy_or_n_p
20934 in #if 0 as it is not compatible with y-or-n-p-with-timeout.
20935 (timer_check) [TARGET_API_MAC_CARBON]: Add extern.
20936 [TARGET_API_MAC_CARBON] (mac_handle_dialog_event): Use QuitEventLoop
20937 instead of QuitAppModalLoopForWindow. Consolidate QuitEventLoop calls.
20938 (pop_down_dialog) [TARGET_API_MAC_CARBON]: New function.
20939 [TARGET_API_MAC_CARBON] (create_and_show_dialog): Use it for unwind.
20940 Run timers during dialog popup.
20941 (Fmenu_or_popup_active_p) [TARGET_API_MAC_CARBON]: Use popup_activated.
20942
209432007-06-21 Jason Rumney <jasonr@gnu.org>
20944
20945 * image.c (convert_mono_to_color_image): Swap fore and background.
20946
209472007-06-20 Jason Rumney <jasonr@gnu.org>
20948
20949 * w32bdf.c (w32_BDF_to_x_font): Unmap memory when finished.
20950 (w32_free_bdf_font): Unmap memory not handle.
20951
209522007-06-20 Sam Steingold <sds@gnu.org>
20953
20954 * gmalloc.c (__morecore): Fix the declaration to comply with the
20955 definition.
20956
209572007-06-20 Juanma Barranquero <lekktu@gmail.com>
20958
20959 * w32term.c (w32_delete_display): Remove leftover declaration.
20960 (w32_define_cursor, w32_initialize): Make static.
20961
20962 * w32.c (_wsa_errlist): Fix typo in error message.
20963 (init_environment): Ignore any environment variable from the
20964 registry having a null value.
20965
209662007-06-20 Glenn Morris <rgm@gnu.org>
20967
20968 * Makefile.in (LIBGIF): Default to -lgif.
20969
209702007-06-17 Jason Rumney <jasonr@gnu.org>
20971
20972 * w32menu.c (add_menu_item): Don't use multibyte string functions on
20973 unicode strings.
20974
209752007-06-16 Juanma Barranquero <lekktu@gmail.com>
20976
20977 * xdisp.c (syms_of_xdisp) <auto-resize-tool-bars>:
20978 Fix typo in docstring.
20979
209802007-06-16 Eli Zaretskii <eliz@gnu.org>
20981
20982 * w32menu.c (add_menu_item): Escape `&' characters in menu items
20983 and their keybindings.
20984
209852007-06-15 Chong Yidong <cyd@stupidchicken.com>
20986
20987 * composite.c (update_compositions): Fix last fix.
20988
209892007-06-14 Jason Rumney <jasonr@gnu.org>
20990
20991 * w32.c (get_process_times_fn): New function pointer.
20992 (globals_of_w32): Intialize it if present in kernel32.dll.
20993 (w32_get_internal_run_time): New function.
20994
20995 * editfns.c (Fget_internal_run_time) [WINDOWSNT]: Use it.
20996
209972007-06-14 Kenichi Handa <handa@etlken.m17n.org>
20998
20999 * composite.c (update_compositions): Check the validness of
21000 compositions.
21001
210022007-06-14 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
21003
21004 * frame.h (struct frame) [MAC_OS]: New member external_tool_bar.
21005 (FRAME_EXTERNAL_TOOL_BAR) [MAC_OS]: Use it.
21006
21007 * macfns.c (mac_window) [USE_MAC_TOOLBAR]: Set toolbar_win_gravity.
21008 (x_set_tool_bar_lines) [USE_MAC_TOOLBAR]: Set FRAME_EXTERNAL_TOOL_BAR.
21009
21010 * macgui.h (USE_MAC_TOOLBAR): New define.
21011
21012 * macmenu.c [TARGET_API_MAC_CARBON] (menu_target_item_handler):
21013 Return immediately unless popup is activated.
21014
21015 * macterm.c (x_draw_fringe_bitmap) [MAC_OSX]: Extend fringe
21016 background to scroll bar gap.
21017 (x_scroll_bar_create) [MAC_OSX]: Set bar->fringe_extended_p.
21018 (XTset_vertical_scroll_bar) [MAC_OSX]: Put leftmost/rightmost
21019 scroll bars on frame edge. Check fringe background extension.
21020 Don't clear extended fringe background area.
21021 (TOOLBAR_IDENTIFIER, TOOLBAR_ICON_ITEM_IDENTIFIER)
21022 (TOOLBAR_ITEM_COMMAND_ID_OFFSET, TOOLBAR_ITEM_COMMAND_ID_P)
21023 (TOOLBAR_ITEM_COMMAND_ID_VALUE, TOOLBAR_ITEM_MAKE_COMMAND_ID):
21024 [USE_MAC_TOOLBAR]: New macros.
21025 (mac_move_window_with_gravity, mac_get_window_origin_with_gravity)
21026 (mac_handle_toolbar_event, mac_image_spec_to_cg_image)
21027 (mac_create_frame_tool_bar, update_frame_tool_bar, free_frame_tool_bar)
21028 (mac_tool_bar_note_mouse_movement, mac_handle_toolbar_command_event)
21029 [USE_MAC_TOOLBAR]: New functions.
21030 (mac_handle_window_event) [USE_MAC_TOOLBAR]: Reposition window
21031 manually if previous repositioning has failed.
21032 (mac_handle_keyboard_event): Use precomputed event kind.
21033 (XTread_socket) [USE_MAC_TOOLBAR]: Handle click in structure region
21034 as tool bar item click. Handle mouse movement over tool bar items.
21035
21036 * macterm.h (struct mac_output) [USE_MAC_TOOLBAR]: New member
21037 toolbar_win_gravity.
21038 (struct scroll_bar) [MAC_OSX]: New member fringe_extended_p.
21039 (update_frame_tool_bar, free_frame_tool_bar) [USE_MAC_TOOLBAR]:
21040 Add externs.
21041
21042 * xdisp.c (update_tool_bar, redisplay_tool_bar, redisplay_window)
21043 [USE_MAC_TOOLBAR]: Sync with GTK+ tool bar display.
21044
210452007-06-14 Chong Yidong <cyd@stupidchicken.com>
21046
21047 * image.c (search_image_cache): Remove unused variable.
21048
210492007-06-13 Chong Yidong <cyd@stupidchicken.com>
21050
21051 * xfns.c, xmenu.c: Link to xaw3d if available.
21052
210532007-06-13 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
21054
21055 * dispextern.h (struct image) [HAVE_WINDOW_SYSTEM]: New members
21056 frame_foreground and frame_background.
21057
21058 * image.c (lookup_image): Save frame foreground and background colors.
21059 (search_image_cache): Check if saved and current frame colors match.
21060
210612007-06-12 Stefan Monnier <monnier@iro.umontreal.ca>
21062
21063 * regex.c (regex_compile): Remove the `regnum' counter.
21064 Use bufp->re_nsub instead. Add support for \(?N:RE\).
21065
210662007-06-11 Stefan Monnier <monnier@iro.umontreal.ca>
21067
21068 * term.c: Include intervals.h to declare Fget_text_property.
21069
210702007-06-10 Jason Rumney <jasonr@gnu.org>
21071
21072 * w32fns.c (Fx_file_dialog): Take size from struct not pointer.
21073
210742007-06-08 Juanma Barranquero <lekktu@gmail.com>
21075
21076 * callint.c (Fcall_interactively):
21077 * editfns.c (Fdelete_and_extract_region):
21078 * fileio.c (Fread_file_name):
21079 * fns.c (Fmapconcat):
21080 * keyboard.c (cmd_error_internal):
21081 * keymap.c (Fkey_description):
21082 * lread.c (openp):
21083 * minibuf.c (read_minibuf):
21084 * search.c (wordify):
21085 * sunfns.c (sel_read):
21086 * xdisp.c (Fformat_mode_line, syms_of_xdisp):
21087 * xfns.c (x_default_scroll_bar_color_parameter):
21088 * xmenu.c (menu_help_callback):
21089 * xselect.c (Fx_get_atom_name):
21090 * xterm.c (x_term_init): Use empty_unibyte_string.
21091
210922007-06-08 Dmitry Antipov <dmantipov@yandex.ru> (tiny change)
21093
21094 * alloc.c (init_strings): Initialize canonical empty strings.
21095 (make_uninit_string, make_uninit_multibyte_string): Return appropriate
21096 canonical empty string when the requested size is 0.
21097
21098 * emacs.c (empty_unibyte_string): Rename from empty_string.
21099 (empty_multibyte_string): New canonical empty string.
21100 (syms_of_emacs): Don't initialize empty_string.
21101
21102 * lisp.h (STRING_SET_UNIBYTE): Return the canonical empty unibyte
21103 string, if appropriate.
21104 (empty_unibyte_string, empty_multibyte_string): New externs.
21105 (empty_string): Remove extern.
21106
21107 * lread.c (syms_of_lread): Use empty_unibyte_string.
21108
211092007-06-07 Jason Rumney <jasonr@gnu.org>
21110
21111 * s/ms-w32.h: Don't define HAVE_TZNAME.
21112
21113 * editfns.c (Fcurrent_time_zone): Remove hack for Japanese Windows.
21114
211152007-06-07 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
21116
21117 * mac.c (xrm_get_preference_database): Remove BLOCK_INPUT.
21118
21119 * macfns.c (mac_get_window_bounds): Move extern to macterm.h.
21120 (compute_tip_xy) [TARGET_API_MAC_CARBON]: Use GetGlobalMouse.
21121
21122 * macmenu.c [TARGET_API_MAC_CARBON] (menu_target_item_handler):
21123 Don't call next handler.
21124 [TARGET_API_MAC_CARBON] (install_menu_target_item_handler):
21125 Remove argument. Install handler to application.
21126 (set_frame_menubar): Don't change deep_p.
21127 (mac_menu_show): Use FRAME_OUTER_TO_INNER_DIFF_X and
21128 FRAME_OUTER_TO_INNER_DIFF_Y.
21129 (DIALOG_BUTTON_COMMAND_ID_OFFSET, DIALOG_BUTTON_COMMAND_ID_P)
21130 (DIALOG_BUTTON_COMMAND_ID_VALUE, DIALOG_BUTTON_MAKE_COMMAND_ID)
21131 [HAVE_DIALOGS]: New macros.
21132 [HAVE_DIALOGS] (mac_handle_dialog_event, create_and_show_dialog):
21133 Use them.
21134 (fill_menubar) [TARGET_API_MAC_CARBON]: Use CFString.
21135
21136 * macselect.c [MAC_OSX] (install_service_handler): Rename from
21137 init_service_handler. All callers changed. Return OSStatus value.
21138
21139 * macterm.c (mac_begin_cg_clip): New arg F. Call SetPortWindowPort.
21140 All callers changed so as not to call SetPortWindowPort.
21141 (mac_begin_cg_clip) [USE_CG_DRAWING]: Call mac_prepare_for_quickdraw.
21142 (mac_draw_image_string_atsui) [USE_ATSUI]: New function created from
21143 mac_draw_string_common.
21144 (mac_draw_image_string_qd): Likewise.
21145 (mac_draw_string_common): Use them. Add INLINE.
21146 (XTmouse_position, x_scroll_bar_report_motion) [TARGET_API_MAC_CARBON]:
21147 Use FRAME_OUTER_TO_INNER_DIFF_X, FRAME_OUTER_TO_INNER_DIFF_Y, and
21148 GetGlobalMouse.
21149 (x_set_mouse_pixel_position) [MAC_OSX]: Use FRAME_OUTER_TO_INNER_DIFF_X
21150 and FRAME_OUTER_TO_INNER_DIFF_Y.
21151 [TARGET_API_MAC_CARBON] (mac_handle_mouse_event): Likewise.
21152 [USE_MAC_TSM] (mac_handle_text_input_event): Likewise.
21153 (x_make_frame_visible) [TARGET_API_MAC_CARBON]: Move code for
21154 repositioning window to mac_handle_window_event.
21155 (x_make_frame_invisible) [TARGET_API_MAC_CARBON]: Move code for
21156 saving window location to mac_handle_window_event
21157 [USE_MAC_FONT_PANEL] (mac_show_hide_font_panel): Install handler here.
21158 (install_menu_target_item_handler): Remove argument in extern.
21159 [TARGET_API_MAC_CARBON] (mac_event_to_emacs_modifiers):
21160 Also accept command events.
21161 (do_keystroke): New function created from XTread_socket.
21162 (init_command_handler): Remove functions.
21163 [TARGET_API_MAC_CARBON] (mac_handle_window_event): Reposition window
21164 and save window location by kEventWindowShowing and kEventWindowHiding
21165 handlers here. Don't call next handler for window state change and
21166 focus events.
21167 (mac_handle_application_event, mac_handle_keyboard_event)
21168 [TARGET_API_MAC_CARBON]: New functions.
21169 (install_window_handler) [TARGET_API_MAC_CARBON]: Register handlers for
21170 kEventWindowShowing and kEventWindowHiding events. Move installation
21171 of mouse, font, text input and menu target item handlers to
21172 install_application_handler.
21173 (install_application_handler) [TARGET_API_MAC_CARBON]: New function.
21174 (mac_handle_cg_display_reconfig) [MAC_OS_X_VERSION_MAX_ALLOWED >= 1030]:
21175 New function.
21176 (init_dm_notification_handler) [MAC_OS_X_VERSION_MAX_ALLOWED >= 1030]:
21177 Register it.
21178 (XTread_socket) [TARGET_API_MAC_CARBON]:
21179 Consolidate SendEventToEventTarget calls.
21180 Use FRAME_OUTER_TO_INNER_DIFF_X and FRAME_OUTER_TO_INNER_DIFF_Y.
21181 Move application activation handler to mac_handle_application_event.
21182 Move keyboard handler to mac_handle_keyboard_event.
21183 (XTread_socket) [!TARGET_API_MAC_CARBON]: Use do_keystroke.
21184 (mac_initialize) [TARGET_API_MAC_CARBON]: Don't call
21185 init_command_handler. Call install_application_handler.
21186
21187 * macterm.h (mac_get_window_bounds): Move extern from macfns.c.
21188 (FRAME_OUTER_TO_INNER_DIFF_X, FRAME_OUTER_TO_INNER_DIFF_Y): New macros.
21189
211902007-06-07 Glenn Morris <rgm@gnu.org>
21191
21192 * emacs.c (main): Use `emacs-copyright' in --version output.
21193
211942007-06-06 Chong Yidong <cyd@stupidchicken.com>
21195
21196 * image.c (xpm_load): Remove spurious call to xpm_init_color_cache.
21197
211982007-06-06 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
21199
21200 * macfns.c (mac_window): Replace WindowPtr with WindowRef.
21201
21202 * macgui.h: Replace WindowPtr with WindowRef.
21203
21204 * macmenu.c: Replace MenuHandle and GetMenuHandle with MenuRef and
21205 GetMenuRef, respectively. Replace WindowPtr with WindowRef.
21206 Replace ControlHandle with ControlRef.
21207 (install_menu_quit_handler): Rename arg MENU_HANDLE to ROOT_MENU.
21208
21209 * macterm.c: Replace MenuHandle and GetMenuHandle with MenuRef and
21210 GetMenuRef, respectively. Replace WindowPtr with WindowRef.
21211 Replace ControlHandle with ControlRef.
21212 (USE_CARBON_EVENTS): Remove. Use TARGET_API_MAC_CARBON instead.
21213 [MAC_OS8] (do_get_menus): Rename variable `menu_handle' to `menu'.
21214
21215 * macterm.h (struct scroll_bar): Rename member control_handle_low
21216 and control_handle_high to control_ref_low and control_ref_high.
21217 All uses changed.
21218 (SCROLL_BAR_CONTROL_REF, SET_SCROLL_BAR_CONTROL_REF): Rename from
21219 SCROLL_BAR_CONTROL_HANDLE and SET_SCROLL_BAR_CONTROL_HANDLE,
21220 respectively. All uses changed.
21221 (XCreatePixmap, XCreatePixmapFromBitmapData, XSetWindowBackground)
21222 (install_window_handler, remove_window_handler): Replace WindowPtr
21223 with WindowRef in externs.
21224
212252007-06-05 Juanma Barranquero <lekktu@gmail.com>
21226
21227 * xfaces.c (Finternal_lisp_face_p): Signal error for face alias loops.
21228
212292007-06-03 Nick Roberts <nickrob@snap.net.nz>
21230
21231 * keyboard.c (discard_mouse_events): Add GPM_CLICK_EVENT case.
21232
21233 * frame.c (Fmouse_position, Fmouse_pixel_position):
21234 Condition on HAVE_GPM too.
21235
21236 * term.c (term_mouse_highlight): Remove unused variables.
21237 (Fterm_open_connection): Set gpm_zerobased to 1.
21238 (term_mouse_movement, term_mouse_click, handle_one_term_event):
21239 Use zero based co-ordinates.
21240 (handle_one_term_event): Report a drag as mouse movement too.
21241
21242 * Makefile.in (MOUSE_SUPPORT): Define for HAVE_GPM.
21243
212442007-06-03 Chong Yidong <cyd@stupidchicken.com>
21245
21246 * image.c (search_image_cache): New function. Require background
21247 color match if background color is unspecified in the image spec.
21248 (uncache_image, lookup_image): Use it.
21249
212502007-06-01 Juanma Barranquero <lekktu@gmail.com>
21251
21252 * window.c (Fshrink_window): Reflow docstring.
21253
212542007-06-02 Chong Yidong <cyd@stupidchicken.com>
21255
21256 * Version 22.1 released.
21257
212582007-06-01 Richard Stallman <rms@gnu.org>
21259
21260 * xfns.c (x_encode_text): Add GCPRO.
21261
212622007-06-01 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
21263
21264 * xfns.c (x_set_name_internal): Save encoded name before
21265 x_encode_text in case string data is relocated.
21266
212672007-05-31 Richard Stallman <rms@gnu.org>
21268
21269 * buffer.c (syms_of_buffer): Doc fix.
21270
212712007-05-30 Nick Roberts <nickrob@snap.net.nz>
21272
21273 * sysdep.c (init_sys_modes): Add rather than replace with
21274 O_NONBLOCK.
21275
21276 * frame.c [HAVE_GPM] (Fset_mouse_pixel_position): Add call to
21277 term_mouse_moveto.
21278
21279 * termhooks.h (term_mouse_moveto): New extern.
21280
21281 * term.c (mouse_face_window): Rename...
21282 (Qmouse_face_window): ...to this.
21283 (term_show_mouse_face, term_clear_mouse_face)
21284 (term_mouse_highlight): Use Qmouse_face_window.
21285 (term_mouse_moveto): New function.
21286 (term_mouse_position): Make it work.
21287 (syms_of_term): Uncomment assignment to mouse_position_hook.
21288 Staticpro Qmouse_face_window.
21289
212902007-05-28 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
21291
21292 * xdisp.c (redisplay_internal): Bind inhibit-point-motion-hooks to t
21293 around current_column call.
21294
212952007-05-26 Dan Nicolaescu <dann@ics.uci.edu>
21296
21297 * xfaces.c (syms_of_xfaces): Delete stray semicolon.
21298 * xdisp.c (next_element_from_buffer):
21299 * window.c (delete_window):
21300 * term.c (term_mouse_highlight):
21301 * msdos.c (getdefdir):
21302 * macterm.c (mac_create_bitmap_from_bitmap_data)
21303 (init_font_name_table):
21304 * fns.c (Fsxhash):
21305 * data.c (Fmake_local_variable):
21306 * ccl.c (ccl_driver): Likewise.
21307
213082007-05-24 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
21309
21310 * macterm.c [USE_CARBON_EVENTS] (mac_handle_window_event):
21311 Call mac_wakeup_from_rne on window size change.
21312
213132007-05-25 Chong Yidong <cyd@stupidchicken.com>
21314
21315 * image.c (uncache_image): Fix typo.
21316
213172007-05-23 Johannes Weiner <hannes@saeurebad.de> (tiny change)
21318
21319 * keyboard.c (make_lispy_movement): Condition on HAVE_GPM too.
21320
213212007-05-22 Richard Stallman <rms@gnu.org>
21322
21323 * xterm.c (x_connection_closed): Remove NO_RETURN.
21324
213252007-05-22 Martin Rudalics <rudalics@gmx.at>
21326
21327 * syntax.c (scan_words): Fix arg to UPDATE_SYNTAX_TABLE_BACKWARD.
21328
213292007-05-21 Chong Yidong <cyd@stupidchicken.com>
21330
21331 * image.c (uncache_image): New function.
21332 (Fimage_refresh): New function.
21333
213342007-05-20 Jan Djärv <jan.h.d@swipnet.se>
21335
21336 * Makefile.in: Move GPM check outside HAVE_X_WINDOWS.
21337
213382007-05-20 Nick Roberts <nickrob@snap.net.nz>
21339
21340 * config.in, keyboard.c, Makefile.in, sysdep.c, term.c,
21341 * termhooks.h: Use HAVE_GPM instead of HAVE_GPM_H.
21342
213432007-05-20 Nick Roberts <nickrob@snap.net.nz>
21344
21345 * keyboard.c (make_lispy_event): Make case GPM_CLICK_EVENT
21346 conditional on [HAVE_GPM_H].
21347
213482007-05-19 Stefan Monnier <monnier@iro.umontreal.ca>
21349
21350 * syntax.c (skip_chars): Update syntax-table only after we checked that
21351 the new location is valid.
21352
213532007-05-19 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
21354
21355 * macterm.c (x_calc_absolute_position): Add BLOCK_INPUT around
21356 mac_get_window_bounds.
21357
213582007-05-20 Nick Roberts <nickrob@snap.net.nz>
21359
21360 * Makefile.in (LIBGPM): Allow it to be set from configure.
21361 If set then link Emacs with it.
21362
21363 * config.in: Regenerate.
21364
21365 * lisp.h (add_gpm_wait_descriptor, delete_gpm_wait_descriptor):
21366 New externs.
21367
21368 * termhooks.h [HAVE_GPM_H] (enum event_kind): Add GPM_CLICK_EVENT.
21369 Include gpm.h.
21370 (handle_one_term_event, term_gpm): New externs.
21371
21372 * sysdep.c [HAVE_GPM_H] (init_sys_modes): Make gpm_fd nonblocking
21373 and allow it to be interrupted by SIGIO.
21374
21375 * process.c (gpm_wait_mask, max_gpm_desc): New variables.
21376 (wait_reading_process_output): Wait on gpm_fd too.
21377 (add_gpm_wait_descriptor, delete_gpm_wait_descriptor)): New functions.
21378 (add_gpm_wait_descriptor_called_flag): New variable.
21379 (delete_keyboard_wait_descriptor): Check gpm_wait_mask.
21380
21381 * keyboard.c [HAVE_GPM_H] (Qmouse_fixup_help_message)
21382 (make_lispy_movement, tracking_off, Ftrack_mouse, some_mouse_moved)
21383 (show_help_echo, readable_events, kbd_buffer_get_event, init_keyboard):
21384 Extend HAVE_MOUSE ifdefs to HAVE_GPM_H.
21385 (make_lispy_event): Add case GPM_CLICK_EVENT.
21386 (read_avail_input): Handle mouse input.
21387
21388 * term.c (write_glyphs_with_face): New function.
21389 [HAVE_GPM_H]: Include buffer.h, sys/fcntl.h.
21390 (mouse_face_beg_row, mouse_face_beg_col, mouse_face_end_row)
21391 (mouse_face_end_col, mouse_face_past_end, mouse_face_window)
21392 (mouse_face_face_id, term_gpm, pos_x, pos_y)
21393 (last_mouse_x, last_mouse_y): New variables.
21394 (term_show_mouse_face, term_clear_mouse_face, fast_find_position)
21395 (term_mouse_highlight, term_mouse_movement, term_mouse_position)
21396 (term_mouse_click, handle_one_term_event, Fterm_open_connection)
21397 (Fterm_close_connection): New functions.
21398 (term_init): Initialise mouse_face_window.
21399
214002007-05-19 Chong Yidong <cyd@stupidchicken.com>
21401
21402 * xdisp.c (redisplay_window): If first window line is a
21403 continuation line, recompute the new window start instead of
21404 recentering.
21405
214062007-05-18 Glenn Morris <rgm@gnu.org>
21407
21408 * m/alpha.h (ORDINARY_LINK): No longer define on OpenBSD.
21409 Suggested by Alfred M. Szmidt <ams@gnu.org>.
21410
214112007-05-17 Glenn Morris <rgm@gnu.org>
21412
21413 * m/macppc.h (ORDINARY_LINK): No longer define on OpenBSD.
21414
214152007-05-16 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
21416
21417 * macterm.c [USE_CARBON_EVENTS] (mac_convert_event_ref): Also convert
21418 dead key repeat and up events.
21419
214202007-05-14 Chong Yidong <cyd@stupidchicken.com>
21421
21422 * image.c (pbm_load): Check image size for monochrome pbm.
21423
214242007-05-13 Chong Yidong <cyd@stupidchicken.com>
21425
21426 * xterm.c (XTread_socket): Revert last change.
21427
214282007-05-12 Chong Yidong <cyd@stupidchicken.com>
21429
21430 * image.c (pbm_load): Correctly check image size for greyscale pbm.
21431
21432 * xterm.c (XTread_socket): Yet Another Uncaught X Error Crash (YAUXEC).
21433
214342007-05-07 Stefan Monnier <monnier@iro.umontreal.ca>
21435
21436 * editfns.c (Ftranspose_regions): Yet another int/Lisp_Object
21437 mixup (YAILOM).
21438
214392007-05-07 Andreas Schwab <schwab@suse.de>
21440
21441 * keymap.c (Flookup_key): Fix typo in last change.
21442
214432007-05-07 Stefan Monnier <monnier@iro.umontreal.ca>
21444
21445 * keymap.c (Fdefine_key, Flookup_key): Only do the 0x80->meta_modifier
21446 mapping for unibyte strings.
21447
214482007-05-01 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
21449
21450 * macmenu.c (mac_dialog_show): Apply 2007-04-27 change for xmenu.c.
21451 (Fx_popup_dialog) [MAC_OSX]: Likewise.
21452
214532007-04-29 Richard Stallman <rms@gnu.org>
21454
21455 * insdel.c (replace_range): For undo, record insertion first.
21456
214572007-04-29 Andreas Schwab <schwab@suse.de>
21458
21459 * lisp.h (VECSIZE): Use OFFSETOF.
21460
214612007-04-29 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
21462
21463 * xdisp.c (try_window_reusing_current_matrix): Fix number of
21464 disabled lines.
21465
214662007-04-28 Richard Stallman <rms@gnu.org>
21467
21468 * lread.c (read_escape): In a string, \s is always space.
21469
214702007-04-27 Jan Djärv <jan.h.d@swipnet.se>
21471
21472 * xmenu.c (xdialog_show): Call Fredisplay before showing the dialog.
21473
21474 * gtkutil.c (xg_update_menubar, create_menus): Create empty
21475 submenu for menu bar items.
21476
21477See ChangeLog.10 for earlier changes.
21478
21479;; Local Variables:
21480;; coding: utf-8
21481;; add-log-time-zone-rule: t
aac0c6e3
MR
21482;; End:
21483
e3eb1dae 21484 Copyright (C) 2007, 2008, 2009, 2010 Free Software Foundation, Inc.
aac0c6e3
MR
21485
21486 This file is part of GNU Emacs.
21487
21488 GNU Emacs is free software: you can redistribute it and/or modify
21489 it under the terms of the GNU General Public License as published by
21490 the Free Software Foundation, either version 3 of the License, or
21491 (at your option) any later version.
21492
21493 GNU Emacs is distributed in the hope that it will be useful,
21494 but WITHOUT ANY WARRANTY; without even the implied warranty of
21495 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
21496 GNU General Public License for more details.
21497
21498 You should have received a copy of the GNU General Public License
21499 along with GNU Emacs. If not, see <http://www.gnu.org/licenses/>.
21500
21501;; arch-tag: dfb6ad96-1550-4905-9e53-d2059ee84c40