Rename from cvslogs to commits.
[bpt/emacs.git] / src / ChangeLog
CommitLineData
4fe22cdf
CY
12010-01-16 Chong Yidong <cyd@stupidchicken.com>
2
3 * emacs.c (standard_args): Adjust arg priorities to reflect how
4 they are processed in startup.el.
5
e118d2be
AS
62010-01-16 Andreas Schwab <schwab@linux-m68k.org>
7
8 * Makefile.in (lisp, shortlisp): Update.
9
523ae620
SM
102010-01-16 Stefan Monnier <monnier@iro.umontreal.ca>
11
12 * xterm.c (x_term_init): Instead of inhibiting GC while running Lisp
13 code, link the new kboard into all_kboard before running Lisp code,
14 and protect the new terminal with GCPRO (Bug#5365).
15 (x_term_init): Remove unused var `atom'.
16 (x_delete_display, x_delete_terminal): Remove unused var `i'.
17
f0d13888
JD
182010-01-15 Jan Djärv <jan.h.d@swipnet.se>
19
20 * xfns.c (x_get_current_desktop, x_get_desktop_workarea): New functions.
21 (Fx_create_frame): Call x_get_current_desktop and x_get_desktop_workarea
22 to find out usable size of the desktop. Don't make frames larger than
23 this. Bug #3643.
24
cc320f07
KH
252010-01-15 Kenichi Handa <handa@m17n.org>
26
27 * xdisp.c (CHAR_COMPOSED_P): New arg END_CHARPOS. Callers changed.
28
7ffdf101
CY
292010-01-15 Chong Yidong <cyd@stupidchicken.com>
30
31 * nsterm.m (Qnone): Define.
32
33 * nsfns.m (Qnone): Move definition to nsterm.m.
34
d12bd917
KH
352010-01-14 Kenichi Handa <handa@m17n.org>
36
37 * coding.c (detect_coding_iso_2022): Fix handling of euc-xx coding
38 systems.
39
d9a7c140
KH
402010-01-14 Kenichi Handa <handa@m17n.org>
41
42 Make auto-composition work on all buffers even if they are
43 fundamental mode.
44
45 * composite.c (Vauto_composition_mode): New variable.
46 (composition_compute_stop_pos): Check Vauto_composition_mode
47 instead of Vauto_composition_function.
48 (composition_adjust_point, Ffind_composition_internal): Likewise.
49 (syms_of_composite): Declare Lisp variable
50 "auto-composition-mode" here.
51
63286bb2
CY
522010-01-13 Chong Yidong <cyd@stupidchicken.com>
53
54 * xterm.c (x_term_init): Avoid garbage-collecting the new terminal
55 during call to vendor-specific-keysyms (Bug#5365).
56
c2623ee7
YM
572010-01-13 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
58
59 * keyboard.c (input_available_signal) [SYNC_INPUT]:
60 Call SIGNAL_THREAD_CHECK (Bug#5333).
61
62 * atimer.c (alarm_signal_handler) [!SYNC_INPUT]:
63 Call SIGNAL_THREAD_CHECK.
64
0b5397c2
SM
652010-01-13 Stefan Monnier <monnier@iro.umontreal.ca>
66
67 Try to fix bug#5314. This is probably not the final word, tho.
68 * buffer.c (Fset_buffer_modified_p): Try and be careful not to modify
69 recent-auto-save-p as a side-effect.
70 * buffer.h (BUF_AUTOSAVE_MODIFF): New macro.
71 * buffer.c (Fkill_buffer, reset_buffer):
72 * editfns.c (Fsubst_char_in_region):
73 * fileio.c (Finsert_file_contents, Fdo_auto_save)
74 (Fset_buffer_auto_saved, Frecent_auto_save_p): Use it.
75
dc954cb2
KH
762010-01-13 Kenichi Handa <handa@m17n.org>
77
78 Display buffer name, etc. in mode line by composing correctly.
79
80 * xdisp.c (reseat_to_string): Call composition_compute_stop_pos if
81 STRING is not nil.
0b5397c2 82 (display_mode_element): Adjust for the change of
dc954cb2
KH
83 decode_mode_spec and display_line.
84 (decode_mode_spec): Change arg MULTIBYTE to STRING.
85 (display_string): Handle the case that STRING is non-null and
86 LISP_STRING is not nil.
87
0b5397c2
SM
88 * xterm.c (x_draw_composite_glyph_string_foreground):
89 Pay attention to s->face->overstrike.
dc954cb2
KH
90
91 * composite.c (composition_reseat_it): Don't check PT if STRING is
92 non nil.
93
4a00eaca
YM
942010-01-12 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
95
96 * keyboard.c (read_char): Don't apply previous change when current
97 buffer is unchanged by command execution.
98
60abb287
JD
992010-01-12 Jan Djärv <jan.h.d@swipnet.se>
100
101 * keyboard.c (read_char): Return after executing from special map.
102
893db5bc
GM
1032010-01-12 Glenn Morris <rgm@gnu.org>
104
105 * emacs.c (REPORT_EMACS_BUG_PRETEST_ADDRESS): Set it to
106 bug-gnu-emacs rather than emacs-pretest-bug.
107
4d03ece0
CY
1082010-01-11 Chong Yidong <cyd@stupidchicken.com>
109
110 * nsterm.m (syms_of_nsterm): Initialize Qcontrol etc. before
111 initializing the Lisp variables that depend on them.
112
1df47e38
YM
1132010-01-11 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
114
115 * xfns.c (x_set_menu_bar_lines) [!USE_X_TOOLKIT && !USE_GTK]:
116 Clear areas that will not be updated after change of menu bar lines.
117 Clear the menu bar window's current matrix when the window gets empty.
118
2f1c6384
CY
1192010-01-09 Chong Yidong <cyd@stupidchicken.com>
120
e398c61c
CY
121 * intervals.h, textprop.c (extend_property_ranges): Return value
122 and args changed. Discard properties that begin at or after the
123 new end (Bug#5306).
124
125 * editfns.c (Fformat): Caller changed.
126
e5a29a10
CY
127 * nsterm.m (ns_set_default_prefs): Delete function.
128 (syms_of_nsterm): Initialize ns_command_modifier,
129 ns_control_modifier, ns_function_modifier, ns_antialias_text, and
130 ns_antialias_threshold here, not in ns_term_init (Bug#4113).
131
2f1c6384
CY
132 * xdisp.c (pos_visible_p): Check for invisible text at the correct
133 position (Bug#4040).
134
d427a9fa
EZ
1352010-01-09 Eli Zaretskii <eliz@gnu.org>
136
137 * editfns.c (Ffloat_time): Doc fix.
138
21b9df2f
JD
1392010-01-09 Jan Djärv <jan.h.d@swipnet.se>
140
141 * xfns.c (Fx_create_frame): Don't create frame larger than display
142 by default bug#3643.
143
4b00d3b1
YM
1442010-01-09 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
145
146 * frame.h (FRAME_TOP_MARGIN_HEIGHT): New macro.
147 (FRAME_LINE_TO_PIXEL_Y, FRAME_PIXEL_Y_TO_LINE): Take account of pseudo
148 windows above internal border.
149
150 * window.h (WINDOW_MENU_BAR_P, WINDOW_TOOL_BAR_P): New macros.
151 (WINDOW_TOP_EDGE_Y, WINDOW_BOTTOM_EDGE_Y): Take account of pseudo
152 windows above internal border.
153
154 * xdisp.c (get_glyph_string_clip_rects, init_glyph_string): Don't treat
155 tool bar windows specially.
156
157 * xfns.c (x_set_tool_bar_lines): Take account of menu bar height.
158
159 * xterm.c (x_after_update_window_line): Don't treat tool bar windows
160 specially.
161 (XTflash): Take account of menu bar height.
162
163 * w32term.c (x_after_update_window_line): Don't treat tool bar windows
164 specially.
165
5075d853
JD
1662010-01-08 Jan Djärv <jan.h.d@swipnet.se>
167
168 * dispnew.c (change_frame_size_1): newwidth == FRAME_COLS (f) must
169 also be true before we can return early (bug #5339).
170
474217c8
CY
1712010-01-06 David Reitter <david.reitter@gmail.com>
172
173 * nsfns.m (ns_get_screen): Rewrite, returning NULL for non-NS.
174 (Fns_display_usable_bounds): Rewrite, computing bounds properly
175 (Bug#3233).
176
c0e6d47d
JD
1772010-01-06 Jan Djärv <jan.h.d@swipnet.se>
178
d0cf45b7
JD
179 * font.c (font_open_entity): Enable chache and call cached_font_ok
180 for the driver if defined.
181 (QCuser_spec): New symbol.
182 (font_spec_from_name): Save name as user-spec.
183 (font_load_for_lface): Keep user-spec instead of name.
184 (font_open_by_name): Save name as user-spec.
185 (syms_of_font): Initialize QCuser_spec.
b7f8e4f5 186 (font_clear_prop): Clear name if it exists in font (bug#5157).
d0cf45b7
JD
187
188 * xftfont.c (xftfont_open): Call xftfont_add_rendering_parameters.
189 (xftfont_add_rendering_parameters, xftfont_cached_font_ok): New.
190 (syms_of_xftfont): Initialize xftfont_driver.cached_font_ok.
191
192 * font.h (struct font_driver): Add cached_font_ok.
193
c0e6d47d
JD
194 * xterm.c (x_clear_frame): Queue draw for scroll bars.
195
7c583cd8
JD
1962010-01-05 Jan Djärv <jan.h.d@swipnet.se>
197
198 * xterm.c (x_new_font): Move code for setting rows/cols before
199 resizing ...
200 (x_set_window_size): ... to here. bug #2568.
201
202 * gtkutil.c (xg_clear_under_internal_border): New function.
0b5397c2
SM
203 (xg_frame_resized, xg_frame_set_char_size):
204 Call xg_clear_under_internal_border.
7c583cd8 205 (xg_update_scrollbar_pos): Clear under old scroll bar position.
69e2f185 206
03f77f0a
CY
2072010-01-05 Chong Yidong <cyd@stupidchicken.com>
208
209 * keyboard.c (read_key_sequence): Catch keyboard switch after
210 making a new tty frame (Bug#5095).
211
2a1ef5be
KH
2122010-01-05 Kenichi Handa <handa@m17n.org>
213
214 * fontset.c (fontset_find_font): Fix getting the frame pointer.
215
e3eb1dae
SM
2162010-01-04 Stefan Monnier <monnier@iro.umontreal.ca>
217
218 * dbusbind.c (xd_remove_watch): Avoid trying to convert a void* to
219 Lisp_Object, preferring to convert a lisp_Object to a void* instead.
220 (Fdbus_init_bus): Use XHASH to get a scalar value from a Lisp_Object.
221
777013f2
MA
2222010-01-03 Michael Albinus <michael.albinus@gmx.de>
223
224 * dbusbind.c (xd_add_watch): Improve debug message.
225 (xd_remove_watch): Improve debug message. If DATA is the session
226 bus, unset D-Bus session environment.
227 (Fdbus_init_bus): Pass the bus as argument to
228 dbus_connection_set_watch_functions. (Bug#5283)
7c583cd8 229
8932b1c2
CY
2302010-01-01 Chong Yidong <cyd@stupidchicken.com>
231
87231e2c
CY
232 * nsterm.m (ns_get_color): Fix buffer overflow (Bug#4763).
233
4801c5fa
CY
234 * lread.c (syms_of_lread): Make it clearer that these are the
235 names of loaded files (Bug#5068).
236
8932b1c2
CY
237 * eval.c (run_hook_with_args): Handle the case where the global
238 value has the obsolete single-function form (Bug#5026).
239
11e3c684
CY
2402009-12-27 Chong Yidong <cyd@stupidchicken.com>
241
242 * minibuf.c (Fall_completions): Minor optimization.
243
5b28ce35
EZ
2442009-12-26 Eli Zaretskii <eliz@gnu.org>
245
5ce6e4f4
JB
246 * .gdbinit (pgx): Fix display of composite glyphs.
247 Display cmp.from and cmp.to as well.
248 (pitx): Fix last change.
5b28ce35 249
bcffff46
KH
2502009-12-25 Kenichi Handa <handa@m17n.org>
251
252 * composite.h (composition_adjust_point): Update prototype.
253
254 * composite.c (composition_reseat_it): Don't make a composition
255 spanning over point.
256 (CHAR_COMPOSABLE_P): Treat U+200C (ZWNJ) and U+200D (ZWJ) as
257 composable characters.
258 (composition_adjust_point): New arg NEW_PT. Callers changed.
259
260 * keyboard.c (command_loop_1): Force redisplay if the last point
261 was within a composition.
262 (adjust_point_for_property): Don't adjust point for automatic
263 composition when called after buffer modification.
264
3f670e9a
EZ
2652009-12-19 Eli Zaretskii <eliz@gnu.org>
266
5ce6e4f4
JB
267 * .gdbinit (pitx): Don't use enum names, use their values.
268 Remove reference to non-existing value GET_FROM_COMPOSITION.
be996d82
EZ
269 (pgx): Don't use enum names, use their values.
270 (pitmethod): New helper command.
271 (pitx): Use it to display iteration method.
272 (pgrowit): New command.
273
ad903955
EZ
274 * makefile.w32-in ($(BLD)/cmds.$(O)): Depend on frame.h.
275
3f670e9a
EZ
276 Update dependencies in Makefile.in.
277
278 * Makefile.in (alloc.o): Depend on termhooks.h.
279 (atimer.o): Depend on blockinput.h.
280 (buffer.o): Depend on indent.h, keyboard.h, coding.h, keymap.h,
281 and frame.h.
282 (callint.o): Depend on systime.h, coding.h, and composite.h.
283 (callproc.o): Depend on buffer.h.
284 (casefiddle.o): Don't depend on charset.h.
285 (casetab.o): Depend on character.h.
286 (ccl.o): Depend on composite.h.
287 (chartab.o): Depend on ccl.h.
288 (cm.o): Depend on dispextern.h.
289 (cmds.o): Depend on systime.h, coding.h, frame.h, and composite.h.
290 (coding.o): Don't depend on $(INTERVALS_H).
291 (composite.o): Don't depend on dispextern.h explicitly (it's in
292 $(INTERVALS_H)). Depend on ccl.h.
293 (data.o): Depend on systime.h, coding.h, composite.h,
294 dispextern.h, font.h, and ccl.h.
295 (dired.o): Depend on composite.h.
296 (dispnew.o): Depend on coding.h. Don't depend explicitly on
297 composite.h (it's in $(INTERVALS_H)).
298 (doc.o): Depend on systime.h, coding.h, and composite.h.
299 (editfns.o): Don't depend explicitly on dispextern.h.
300 (emacs.o): Depend on frame.h and coding.h.
301 (eval.o): Depend on coding.h, composite.h, and xterm.h.
302 (fileio.o): Depend on frame.h and commands.h. Don't depend
303 explicitly on dispextern.h.
304 (filelock.o): Don't depend on epaths.h and charset.h. Depend on
305 composite.h.
306 (fns.o): Don't depend on termhooks.h.
307 (font.o): Depend on buffer.h, composite.h, fontset.h, and xterm.h.
308 (fontset.o): Depend on blockinput.h, atimer.h, systime.h,
309 coding.h, $(INTERVALS_H), window.h, xterm.h.
310 (frame.o): Depend on coding.h, composite.h, termhooks.h, and ccl.h.
311 (fringe.o): Depend on blockinput.h, atimer.h, and systime.h.
312 (ftfont.o): Depend on blockinput.h, atimer.h, systime.h, coding.h,
313 fontset.h, ccl.h, and ftfont.h.
314 (ftxfont.o): Depend on atimer.h, systime.h, fontset.h, and ccl.h.
315 (gtkutil.o): Depend on dispextern.h and composite.h.
316 (image.o): Depend on epaths.h, character.h, coding.h, composite.h,
317 termhooks.h, and ccl.h.
318 (indent.o): Depend on systime.h, coding.h, and $(INTERVALS_H).
319 (intervals.o): Depend on systime.h and coding.h.
320 (keyboard.o): Depend on composite.h and coding.h.
321 (keymap.o): Depend on coding.h and frame.h.
322 (lread.o): Depend on systime.h, frame.h, blockinput.h, and atimer.h.
323 (macros.o): Depend on systime.h, coding.h, and composite.h.
324 (menu.o): Depend on systime.h, coding.h, composite.h, window.h,
325 and atimer.h.
326 (minibuf.o): Depend on systime.h and coding.h. Don't depend on
327 dispextern.h explicitly.
0b5397c2
SM
328 (print.o): Depend on termhooks.h, coding.h, and ccl.h.
329 Don't depend explicitly on dispextern.h and composite.h.
3f670e9a
EZ
330 (process.o): Depend on character.h, xgselect.h, and sysselect.h.
331 (regex.o): Don't depend on charset.h.
332 (scroll.o): Depend on systime.h, coding.h, composite.h, and window.h.
333 (search.o): Don't depend explicitly on composite.h.
334 (sound.o): Depend on atimer.h and systime.h.
335 (syntax.o): Don't depend explicitly on composite.h.
336 (sysdep.o): Depend on coding.h and composite.h.
337 (term.o): Depend on xterm.h and buffer.h.
338 (terminal.o): Depend on dispextern.h, composite.h, and systime.h.
339 (textprop.o): Don't depend on dispextern.h explicitly.
340 (undo.o): Depend on dispextern.h.
341 (window.o): Depend on coding.h and termhooks.h. Don't depend on
342 dispextern.h and composite.h explicitly.
343 (xdisp.o): Depend on ccl.h.
344 (xfaces.o): Depend on coding.h and ccl.h.
345 (xfns.o): Depend on $(INTERVALS_H) and ccl.h.
346 (xfont.o): Depend on atimer.h, systime.h, fontset.h, and ccl.h.
347 (xftfont.o): Depend on atimer.h, systime.h, fontset.h, ccl.h, and
348 ftfont.h.
349 (xgselect.o): New dependency.
350 (xmenu.o): Depend on composite.h, keymap.h, and sysselect.h.
351 (xselect.o): Depend on keyboard.h, coding.h, and composite.h.
352 (xsettings.o): Depend on dispextern.h, keyboard.h, systime.h,
353 coding.h, composite.h, blockinput.h, atimer.h, and termopts.h.
354 (xsmfns.o): Depend on frame.h and dispextern.h.
355 (xterm.o): Depend on intervals.h, keymap.h, xgselect.h, and
356 sysselect.h.
357
7a6f7fea
AS
3582009-12-19 Andreas Schwab <schwab@linux-m68k.org>
359
360 * font.c (Fclear_font_cache): Pass correct cache argument to
361 font_clear_cache.
362
f4c21026
AS
3632009-12-16 Andreas Schwab <schwab@linux-m68k.org>
364
365 * Makefile.in (prefix-args${EXEEXT}): Don't compile prefix-args.c
366 twice.
367
f7ab0997
CY
3682009-12-15 Chong Yidong <cyd@stupidchicken.com>
369
370 * xdisp.c (decode_mode_spec): Inhibit garbage collection when
371 calling file-remote-p. Reported by Jim Meyering.
372
fa8e045a
MA
3732009-12-15 Michael Albinus <michael.albinus@gmx.de>
374
375 * dbusbind.c (xd_retrieve_arg): Reorder declarations in order to
777013f2 376 avoid compiler warnings. (Bug #5217)
fa8e045a 377
a63dba42
KH
3782009-12-14 Kenichi Handa <handa@m17n.org>
379
380 * coding.c (decode_coding_iso_2022): Ignore ISO_CODE_SS2_7 (0x19)
381 in 8-bit encoding.
382
5ce6e4f4 3832009-12-13 Pat Thoyts <patthoyts@users.sourceforge.net> (tiny change)
36acb2a7
JD
384
385 * xfns.c (x_create_tip_frame): Set the extended window manager hint for
386 tooltip windows.
387
223e5fc6
JD
3882009-12-13 Jan Djärv <jan.h.d@swipnet.se>
389
36acb2a7
JD
390 * xterm.h (struct x_display_info): Add Xatom_net_window_type_tooltip and
391 Xatom_net_window_type.
392
393 * xterm.c (x_term_init): Initialize Xatom_net_window_type_tooltip and
394 Xatom_net_window_type.
395
b8f00677
JD
396 * xterm.c (my_log_handler): New function.
397 (x_term_init): Set my_log_handler as log handler during gtk_init
5ce6e4f4 398 so we can filter out buggy messages. (Bug #5120).
b8f00677 399
e5f0bc9a
JD
400 * xterm.c (xg_scroll_callback): Parameter list changed,
401 use parameter GtkScrollType to determine scroll/line/page.
402 Only allow dragging if a button < 4 is grabbed (bug #5177).
403 (xg_end_scroll_callback): New function.
404 (x_create_toolkit_scroll_bar): Pass xg_end_scroll_callback to
405 xg_create_scroll_bar.
406
407 * gtkutil.c (xg_gtk_scroll_destroy): Remove XG_LAST_SB_DATA handling.
408 (scroll_end_callback): Remove.
409 (xg_create_scroll_bar): Add parameter end_callback, bind it to
410 button-release-event. Replace value-changed event with change-value,
411 bug #5177,
412 (xg_event_is_for_scrollbar): Only return true if button is less than 4,
413 bug #5177.
414
415 * gtkutil.h (XG_LAST_SB_DATA): Remove.
416 (xg_create_scroll_bar): Add GCallback end_callback.
417
223e5fc6
JD
418 * xftfont.c (QClcdfilter): New variable.
419 (xftfont_open): Parse constant names for RGBA, HINT_STYLE and LCDFILTER.
420 (syms_of_xftfont): Initialize QClcdfilter.
421
3c055b77
JD
4222009-12-12 Jan Djärv <jan.h.d@swipnet.se>
423
424 * xsettings.c (struct xsettings): Add member seen.
425 (parse_xft_settings): Update member seen with what we have read.
ba68c0b0 426 Return non-zero if Xft-settings have been parsed, 0 otherwise.
3c055b77
JD
427 (apply_xft_settings): Only update Xft settings with what member seen
428 indicates as new.
429
05fe33ff
EZ
4302009-12-12 Eli Zaretskii <eliz@gnu.org>
431
432 * dispextern.h (struct text_pos): Use EMACS_INT;
433 (struct glyph): Use EMACS_INT for charpos.
434 (struct it): Use EMACS_INT for stop_charpos, end_charpos,
435 region_beg_charpos, region_end_charpos,
436 redisplay_end_trigger_charpos, and also for
437 iterator_stack_entry.end_charpos and
438 iterator_stack_entry.stop_charpos.
439
e8d7886a
JD
4402009-12-12 Jan Djärv <jan.h.d@swipnet.se>
441
5ce6e4f4 442 * gtkutil.c (scroll_end_callback): New function (bug #5177).
e8d7886a
JD
443 (xg_create_scroll_bar): Call scroll_end_callback on button release
444 event (bug #5177).
445 (xg_event_is_for_scrollbar): != replaced with ==.
446
d0db2ec8
KH
4472009-12-12 Kenichi Handa <handa@m17n.org>
448
449 * ftfont.c (struct ftfont_info): New member matrix.
450 (ftfont_open): Setup xftfont_info->matrix.
451 (MFLTFontFT): New member matrix.
452 (FLOOR, CEIL, ROUND): New macros.
453 (ftfont_get_metrics): Handle matrix transformation.
454 (ftfont_shape_by_flt): New arg matrix. Callers changed.
455
456 * xftfont.c (struct xftfont_info): New member matrix.
457 (xftfont_open): Setup xftfont_info->matrix.
458
4592009-12-10 Kenichi Handa <handa@m17n.org>
460
461 * xdisp.c (append_space_for_newline): Consider face-remapping.
462
2cc7b62f
AS
4632009-12-09 Andreas Schwab <schwab@linux-m68k.org>
464
b87dd913
AS
465 * xsettings.c: Include "keyboard.h".
466
eba5eb94
AS
467 * gtkutil.c (xg_tool_bar_proxy_help_callback): Fix missing return.
468
2cc7b62f
AS
469 Fix implicit function declarations.
470 * cmds.c: Include "frame.h".
471 * frame.c: Include "font.h" also if !HAVE_WINDOW_SYSTEM.
472 * frame.h: Move declaration of delete_frame outside of
473 HAVE_WINDOW_SYSTEM.
474
a4ef73c8
CY
4752009-12-09 Ken Brown <kbrown@cornell.edu> (tiny change)
476
477 * s/cygwin.h (G_SLICE_ALWAYS_MALLOC): New variable.
478
479 * emacs.c (main): Set the G_SLICE environment variable for Cygwin
480 GTK builds.
481
944a300c
AS
4822009-12-07 Andreas Schwab <schwab@linux-m68k.org>
483
484 * unexelf.c (unexec): Don't search for .data twice.
485
022eef62
CY
4862009-12-05 Chong Yidong <cyd@stupidchicken.com>
487
426ac949
CY
488 * xdisp.c (push_display_prop): Don't set avoid_cursor_p. Return 0
489 if push failed.
490 (handle_line_prefix): Set avoid_cursor_p here. Check return value
491 of push_display_prop (Bug#5000).
492
022eef62
CY
493 * xfaces.c (Fx_family_fonts): Handle 2009-07-14 change to return
494 value of font_list_entities (Bug#5085).
495
be95bee9
JB
4962009-12-04 Juanma Barranquero <lekktu@gmail.com>
497
498 Fix `string-to-number' to deal consistently with integers and floats.
499 * lread.c (isfloat_string): New argument ignore_trailing to accept all
500 trailing characters, not just whitespace.
501 (read1): Pass new arg 0 to keep old behavior.
502 * data.c (Fstring_to_number): Pass 1 to isfloat_string to ignore
503 trailing chars, as it is already done for integers. Doc fixes.
504 * lisp.h (isfloat_string): Add new arg to declaration of isfloat_string.
505
24c2d7ce
EZ
5062009-12-04 Eli Zaretskii <eliz@gnu.org>
507
0b5397c2
SM
508 * dispextern.h (enum prop_idx) <AUTO_COMPOSED_PROP_IDX>:
509 Delete unused enumeration value.
24c2d7ce 510
7e694795
EZ
5112009-12-03 Eli Zaretskii <eliz@gnu.org>
512
513 * Makefile.in (lisp, shortlisp): Replace indian.el with indian.elc.
514
84b31826
SM
5152009-12-03 Daniel Hackney <dan@haxney.org> (tiny change)
516
517 * process.c (Fmake_network_process): Fix up the tests for
518 "connectionless socket", so they DTRT for seqpacket sockets as well.
519
f00c449b
SM
5202009-12-03 Stefan Monnier <monnier@iro.umontreal.ca>
521
522 * process.c (Qseqpacket): New symbol.
523 (HAVE_SEQPACKET): New macro.
524 (Fmake_network_process): Accept new :type `seqpacket'.
525 (init_process): Add `seqpacket' feature when applicable.
526 (syms_of_process): Initialize Qseqpacket.
527
8096a0ff
YM
5282009-12-01 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
529
530 * font.c (font_load_for_lface, font_open_by_name): Don't store name
531 if entity is Qnil.
532
3e0de07f
SM
5332009-11-30 Stefan Monnier <monnier@iro.umontreal.ca>
534
535 * print.c (print_preprocess): Preprocess the key_and_value table of
536 hashtables, even tho they're "hidden" (bug#5082).
537
abeafb2a
JD
5382009-11-29 Jan Djärv <jan.h.d@swipnet.se>
539
540 * frame.c (frame_make_pointer_invisible)
541 (frame_make_pointer_visible): Declare f before statements.
542
4bf47195
EZ
5432009-11-28 Eli Zaretskii <eliz@gnu.org>
544
545 * Makefile.in [!AUTO_DEPEND]: Remove outdated comment about
546 omitted dependencies on lisp.h.
547
c525b3f2
JD
5482009-11-27 Jan Djärv <jan.h.d@swipnet.se>
549
ece2d4ed
JD
550 * xftfont.c (xftfont_end_for_frame): Just return if dpyinfo->display
551 is NULL.
552
553 * xterm.c (x_delete_terminal): Set dpyinfo->display to NULL.
554
555 * frame.c (frame_make_pointer_invisible)
3e0de07f 556 (frame_make_pointer_visible): Just return if there isn't any selected
ece2d4ed
JD
557 frame.
558
c525b3f2
JD
559 * search.c (simple_search): Remove warning by making *p const.
560
2f00e299
DN
5612009-11-26 Dan Nicolaescu <dann@ics.uci.edu>
562
563 * xdisp.c (power_letter): Remove duplicate const.
564
084b049b
JD
5652009-11-25 Jan Djärv <jan.h.d@swipnet.se>
566
a1fadc6f
JD
567 * term.c (delete_tty): Remove check for last terminal (bug#4970).
568
5ce6e4f4 569 * xsettings.c: Revert changes from 2009-11-23. Just use Xft
084b049b
JD
570 defaults (bug #5025).
571
28259cac
SM
5722009-11-24 Stefan Monnier <monnier@iro.umontreal.ca>
573
574 * insdel.c (adjust_markers_for_delete): Move it in the
575 right direction! (bug#4803)
576
e8e14166
YM
5772009-11-24 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
578
579 * font.c (font_open_entity): Don't use ASET if font_object is Qnil.
580
581 * xterm.c (x_new_font): Update f->scroll_bar_actual_width.
582
86677b58
GM
5832009-11-24 Glenn Morris <rgm@gnu.org>
584
585 * frame.c (focus-follows-mouse): Mention mouse-autoselect-window.
586
581e51e8
JD
5872009-11-23 Jan Djärv <jan.h.d@swipnet.se>
588
cfc86c7a
JD
589 * Makefile.in: Must create deps for ecrt0.o in its rule.
590
581e51e8
JD
591 * xfns.c (Fx_select_font): Try to convert Fontconfig name to Gtk name
592 because that is what Gtk+ font dialog understands.
593
594 * font.c (font_make_object, Fcopy_font_spec): Use Fcopy_alist instead
595 of Fcopy_sequence.
596 (font_open_by_name): Put name given into QCname for font-object returned.
597
598 * frame.c (x_set_font): Save original font name as frame parameter
599 font-parameter.
600
601 * xsettings.c (set_default_xft_settings): New function.
602 (init_xfd_settings): Call set_default_xft_settings if no XSETTINGS window
603 is found.
604
8b264ecb
AS
6052009-11-22 Andreas Schwab <schwab@linux-m68k.org>
606
607 * search.c (simple_search): Avoid CHAR_TO_BYTE in inner loop when
608 searching backwards through multibyte buffer.
609
872870b2
JD
6102009-11-21 Jan Djärv <jan.h.d@swipnet.se>
611
612 * xterm.c: #include xgselect.h.
613 (x_initialize): Call xgselect_initialize.
614
615 * xsettings.c (something_changedCB): C++ comments => C comments.
616 (init_gconf): Do not deal with any GLib file descriptors, xg_select
617 does that now.
618
619 * gtkutil.c (xg_timer, xg_process_timeouts, xg_start_timer)
620 (xg_stop_timer, menu_grab_callback_cnt, menu_grab_callback)
621 (scroll_bar_button_cb): Remove.
5ce6e4f4 622 (create_menus): C++ comments => C comments. Don't bind grab-notify
872870b2
JD
623 event.
624 (xg_create_scroll_bar): Don't bind button-press-event and
625 button-release-event.
626
627 * process.c: Include xgselect.h if defined (USE_GTK) ||
628 defined (HAVE_GCONF).
629 (wait_reading_process_output): Call xg_select for the same condition.
630
631 * xgselect.c (xg_select): New function to better integrate with
632 GLib/Gtk event handling. Needed if GConf daemon dies/restarts.
633
634 * xgselect.h: New file, declare xg_select, xgselect_initialize.
635
636 * Makefile.in (XOBJ): Add xgselect.o.
637
62a6e103
AS
6382009-11-21 Andreas Schwab <schwab@linux-m68k.org>
639
0b5397c2
SM
640 * character.h (STRING_CHAR, STRING_CHAR_AND_LENGTH):
641 Remove ignored second argument. All callers changed.
62a6e103
AS
642 * regex.c (STRING_CHAR, STRING_CHAR_AND_LENGTH, RE_STRING_CHAR)
643 (RE_STRING_CHAR_AND_LENGTH): Likewise.
644 * xdisp.c (string_char_and_length): Likewise.
645
b0ca0f33
DN
6462009-11-21 Dan Nicolaescu <dann@ics.uci.edu>
647
648 * xterm.c (x_new_font):
649 * print.c (print_object):
650 * cmds.c (Fself_insert_command): Move declarations before statements.
651
dd5a6279
CY
6522009-11-20 Ken Brown <kbrown@cornell.edu> (tiny change)
653
654 * s/cygwin.h: Remove unneeded linker flags.
655
4a8e097d
JD
6562009-11-20 Jan Djärv <jan.h.d@swipnet.se>
657
0d1d0d26
JD
658 * xfns.c (x_default_font_parameter): Call xsettings_get_system_font.
659
660 * xsettings.h: Declare xsettings_get_system_font.
661
662 * xsettings.c (xsettings_get_system_font): New function.
663 (init_gconf): No use initiating gconf unless we have Xft also.
664 (syms_of_xsettings): Only provide system-font-setting if HAVE_XFT and
665 HAVE_GCONF.
666
4a8e097d
JD
667 * gtkutil.c (xg_modify_menubar_widgets): If menubar is totally empty
668 add a blank entry so it doesn't collapse into nothing.
669
8ab1650e
SM
6702009-11-19 Stefan Monnier <monnier@iro.umontreal.ca>
671
672 * lread.c (Funintern): Comment out last change.
673
82c602f0
RS
6742009-11-19 Richard Stallman <rms@gnu.org>
675
676 * lread.c (Funintern): Error if symbol is t or nil.
677
87e32266
SM
6782009-11-19 Stefan Monnier <monnier@iro.umontreal.ca>
679
680 * insdel.c (make_gap_larger): Don't make as many assumptions about the
681 representation of Lisp integers.
682 Reported by MJ Chan <mjchan.inbox@gmail.com>.
683
1b9ac145
AS
6842009-11-17 Andreas Schwab <schwab@linux-m68k.org>
685
686 * lisp.h: Remove declaration of Ffont_get_system_font.
687 * xfns.c: Move include of "xsettings.h".
688 * xsettings.h: Use EXFUN to declare Ffont_get_system_font.
689
dfb3c4c6
JD
6902009-11-17 Jan Djärv <jan.h.d@swipnet.se>
691
87e32266
SM
692 * xsettings.c (something_changedCB, Ffont_get_system_font):
693 Check use_system_font.
dfb3c4c6
JD
694 (syms_of_xsettings): DEFVAR font-use-system-font.
695
9370c1d8
AS
6962009-11-17 Andreas Schwab <schwab@linux-m68k.org>
697
25fe851a
AS
698 * xfns.c (x_default_font_parameter): Remove dead assignment.
699
9370c1d8
AS
700 * lisp.h (Fbyteorder, init_font, Ffont_get_system_font): Declare.
701
637fa988
JD
7022009-11-17 Jan Djärv <jan.h.d@swipnet.se>
703
87e32266 704 * xftfont.c (xftfont_fix_match): Older versions of fontconfig do
21050de1 705 not have FC_LCD_*. #define them if not there.
a6eb20d8 706
87e32266 707 * xsettings.c (parse_xft_settings, apply_xft_settings): Ditto.
a6eb20d8 708
637fa988
JD
709 * xterm.h (struct x_display_info): Add atoms and Window for xsettings.
710
711 * xterm.c (handle_one_xevent): Call xft_settings_event for
712 ClientMessage, PropertyNotify and DestroyNotify.
713 (x_term_init): If we have XFT, get DPI from Xft.dpi.
714 Call xsettings_initialize.
715
716 * xftfont.c (xftfont_fix_match): New function.
717 (xftfont_open): Call XftDefaultSubstitute before XftFontMatch.
718 Call xftfont_fix_match after XftFontMatch.
719
720 * xfont.c (xfont_driver): Initialize all members.
721
87e32266
SM
722 * xfns.c (x_default_font_parameter):
723 Try font from Ffont_get_system_font.
637fa988
JD
724 Do not get font from x_default_parameter if we got one from
725 Ffont_get_system_font.
87e32266 726 (Fx_select_font): Get the defaut font name from :name of FRAME_FONT(f).
637fa988
JD
727
728 * w32font.c (w32font_driver): Initialize all members.
729
730 * termhooks.h (enum event_kind): CONFIG_CHANGED_EVENT is new.
731
732 * lisp.h: Declare syms_of_xsettings.
733
87e32266
SM
734 * keyboard.c (kbd_buffer_get_event, make_lispy_event):
735 Handle CONFIG_CHANGED_EVENT.
637fa988
JD
736
737 * ftfont.c (ftfont_filter_properties): New function.
738
739 * frame.c (x_set_font): Remove unused variable lval.
740
87e32266 741 * font.h (struct font_driver): Add filter_properties.
637fa988
JD
742
743 * font.c (font_put_extra): Don't return if val is nil, it means
744 boolean option is off.
745 (font_parse_fcname): Collect all extra properties in extra_props
746 and call filter_properties for all drivers with extra_props and
747 font as parameter.
87e32266
SM
748 (font_open_entity): Do not use cache, it does not pick up new
749 fontconfig settings like hinting.
637fa988
JD
750 (font_load_for_lface): If spec had a name in it, store it in entity.
751
752 * emacs.c (main): Call syms_of_xsettings
753
754 * config.in: HAVE_GCONF is new.
755
756 * Makefile.in (GCONF_CFLAGS, GCONF_LIBS): New variables for HAVE_GCONF.
757 xsettings.o is new.
758
5a942932
KH
7592009-11-17 Kenichi Handa <handa@m17n.org>
760
761 * xdisp.c (x_produce_glyphs): Consider face-remapping when falling
762 back to the default font in case that no suitable font is found.
763
b7c7a4d1
SM
7642009-11-17 Stefan Monnier <monnier@iro.umontreal.ca>
765
766 * menu.c (Fx_popup_menu) [HAVE_NS]: Use generic code for window edge.
767 Suggested by Chad Brown <yandros@mit.edu>.
768 (push_menu_item): Use MENU_ITEMS_ITEM_* names.
769
072f1e39
JD
7702009-11-16 Jan Djärv <jan.h.d@swipnet.se>
771
772 * xmenu.c (x_menu_wait_for_event): Call XFlush before select.
773
5d1e70a2
AS
7742009-11-14 Andreas Schwab <schwab@linux-m68k.org>
775
87e32266 776 * Makefile.in: Ignore errors from mkdir when creating deps directory.
5d1e70a2 777
a53cfbe5
JD
7782009-11-14 Jan Djärv <jan.h.d@swipnet.se>
779
473a99b7
JD
780 * gtkutil.c (xg_update_frame_menubar): Do nothing if menubar already
781 has a parent.
782
a53cfbe5 783 * Makefile.in: If AUTO_DEPEND is defined, make gcc generate
5ce6e4f4 784 dependency files in deps/. Include those files into Makefile.
a53cfbe5
JD
785
786 * config.in: Generated (AUTO_DEPEND).
787
f04bb9b2
MA
7882009-11-13 Michael Albinus <michael.albinus@gmx.de>
789
b7c7a4d1 790 * dbusbind.c (Vdbus_registered_objects_table): Rename from
f04bb9b2
MA
791 Vdbus_registered_functions_table, because it contains also
792 properties. Fix docstring.
b7c7a4d1 793 (Fdbus_call_method, Fdbus_call_method_asynchronously): Fix docstring.
f04bb9b2 794
8f11f7ec
SM
7952009-11-13 Stefan Monnier <monnier@iro.umontreal.ca>
796
797 * alloc.c (mark_object): Don't reprocess marked strings.
798 Check vector's markbit earlier. Adjust calls to mark_vectorlike.
799 (mark_vectorlike, mark_char_table): Assume the object is unmarked.
800
8a605fe8
KH
8012009-11-13 Kenichi Handa <handa@m17n.org>
802
8f11f7ec 803 * category.c (word_boundary_p): Adjust for the change of the
8a605fe8
KH
804 semantics of Vword_combining_categories.
805 (Vword_combining_categories): Describe the slight change of the
806 semantics.
807
241c4680
EZ
8082009-11-13 Eli Zaretskii <eliz@gnu.org>
809
810 * menu.c (Fx_popup_menu): Call Fx_hide_tip only if HAVE_WINDOW_SYSTEM.
811
812 * s/msdos.h (SYSTEM_PURESIZE_EXTRA): Revert last change.
813
5d58e44c
SM
8142009-11-12 Stefan Monnier <monnier@iro.umontreal.ca>
815
816 * xdisp.c (syms_of_xdisp): Fix typo in last change.
817
5e13f9d3
JB
8182009-11-12 Juanma Barranquero <lekktu@gmail.com>
819
820 * makefile.w32-in: Update dependencies; add dependencies to lisp.h.
821
cf54c754
DR
8222009-11-11 David Reitter <david.reitter@gmail.com>
823
824 * menu.c (Fx_popup_menu): Remove left-over debugging code and rename
825 variables to fix 2009-11-09 change.
826
a4ada374
DN
8272009-11-11 Dan Nicolaescu <dann@ics.uci.edu>
828
91433552
DN
829 * process.c (ifflag_def): Make flag_sym constant.
830 (Fnetwork_interface_info): Use a constant pointer.
831 (ifflag_table):
832 * xfns.c (cursor_bits):
833 * xdisp.c (power_letter):
834 * termcap.c (speeds, esctab):
835 * sysdep.c (baud_convert):
836 * keyboard.c (lispy_accent_codes, modifier_names):
837 * image.c (xbm_format, xpm_format, pbm_format, png_format)
838 (jpeg_format, tiff_format, gif_format, svg_format)
839 (interlace_start, interlace_increment, gs_format):
840 * gtkutil.c (separator_names):
841 * fringe.c (swap_nibble):
842 * fns.c (base64_value_to_char, base64_char_to_value):
843 * fileio.c (make_temp_name_tbl):
844 * coding.c (suffixes): Make constant.
845
f4265f6c
DN
846 * frame.c (make_initial_frame):
847 * buffer.c (init_buffer_once): Use make_pure_c_string instead of
848 build_string.
849 * alloc.c (syms_of_alloc): Build Vmemory_signal_data in pure memory.
850
04420943
DN
851 * s/freebsd.h:
852 * s/netbsd.h: Remove code referring to non-existent file: unexsunos4.o.
853
0a5d24ae
DN
854 * Makefile.in: Add dependencies to lisp.h. Remove dependencies
855 for non-existent files: unexmips.c, unexnext.c, abbrev.c, malloc.c.
856
a4ada374
DN
857 * xfns.c (syms_of_xfns): Use make_pure_string instead of build_string.
858 * xterm.c (syms_of_xterm):
859 * xfaces.c (syms_of_xfaces):
860 * xdisp.c (syms_of_xdisp):
861 * lread.c (syms_of_lread):
862 * keyboard.c (syms_of_keyboard): Use make_pure_c_string instead of
863 build_string.
91433552 864
a4ada374
DN
865 * doc.c (Fsnarf_documentation): Purecopy Vbuild_files.
866
af98fc7f
SM
8672009-11-10 Stefan Monnier <monnier@iro.umontreal.ca>
868
8ab1650e 869 * fns.c (Fplist_get): Merge the active and the commented out code.
af98fc7f 870
e90292a9
JD
8712009-11-10 Jan Djärv <jan.h.d@swipnet.se>
872
873 * keyboard.h: Declare timer_check.
874
875 * keyboard.c (timer_check_2): New function that does what the old
876 timer_check did.
877 (timer_check): Call timer_check_2 until -1 or a non-zero time is
878 returned, i.e. don't return -1 with timers pending.
879
880 * process.c: Remove extern declaration of timer_check.
881
882 * xmenu.c (x_menu_wait_for_event): Remove code that did a timeout
883 even if timer_check returned -1.
884
af98fc7f
SM
885 * gtkutil.c (xg_dialog_response_cb): Data is now a struct
886 xg_dialog_data.
e90292a9
JD
887 (pop_down_dialog): Destroy widget (if any), cancel timer and unref
888 the event loop.
889 (xg_maybe_add_timer, xg_dialog_run): New functions (bug #4574).
890 (xg_get_file_name, xg_get_font_name): Call xg_dialog_run (bug #4574).
891 Destroy the dialog after xg_dialog_run.
892
045b83c0
SM
8932009-11-10 Stefan Monnier <monnier@iro.umontreal.ca>
894
895 * menu.c (Fx_popup_menu) [HAVE_NS]: Remove unused vars.
896
1fb99a3a
JD
8972009-11-10 Jan Djärv <jan.h.d@swipnet.se>
898
899 * xmenu.c (xmenu_show): Must not be static after 2009-11-09 changes.
900
04e452cb
JB
9012009-11-09 Juanma Barranquero <lekktu@gmail.com>
902
903 * menu.c [HAVE_NTGUI]: Declare current_popup_menu.
904
ef7417fd
SM
9052009-11-09 Stefan Monnier <monnier@iro.umontreal.ca>
906
907 * menu.c (Fx_popup_menu): Consolidate versions from xmenu.c,
908 w32menu.c, and nsmenu.m.
909 Simplify the obsolete case where position is nil.
910 (cleanup_popup_menu): New function, moved from nsmenu.m.
911 (struct skp): Remove slot `notreal'.
912 (single_keymap_panes, keymap_panes): Remove arg `notreal' and
913 adjust callers.
914 (single_menu_item): Adjust call to parse_menu_item.
915 (syms_of_menu): Defsubr x-popup-menu.
916 * menu.h (Vmenu_updating_frame): Consolidate declarations from *menu.c.
917 (keymap_panes): Don't export any more.
918 (mouse_position_for_popup, w32_menu_show, ns_menu_show)
919 (xmenu_show): Declare.
920 * keyboard.c (parse_menu_item): Remove arg `notreal'.
921 (menu_bar_item, read_char_minibuf_menu_prompt): Adjust callers.
922 * keyboard.h (parse_menu_item): Update declaration.
923 * xmenu.c (Fx_popup_menu): Remove.
924 (syms_of_xmenu): Don't defsubr x-popup-menu.
925 * w32menu.c (Fx_popup_menu): Remove.
926 (syms_of_w32menu): Don't defsubr x-popup-menu.
927 * nsmenu.m (cleanup_popup_menu): Remove.
928 (ns_menu_show): Rename from ns_popup_menu and remove all the code
929 moved to menu.c's Fx_popup_menu.
930 (Fx_popup_menu): Remove.
931 (syms_of_nsmenu): Don't defsubr x-popup-menu, and don't initialize
932 menu_items (it's done in menu.c already).
933
424d6179
SM
9342009-11-08 Stefan Monnier <monnier@iro.umontreal.ca>
935
936 * keyboard.c (parse_menu_item): Handle `notreal' a bit earlier.
937 Use `tem' less. Make sure KEYEQ holds a string or nil (bug#4879).
938
c0df13a6 9392009-11-08 Chong Yidong <cyd@stupidchicken.com>
a20903d0
CY
940
941 * xmenu.c (Fx_popup_menu): Extract event timestamp. Pass it to
c0df13a6 942 xmenu_show. Hide any tooltip before opening a menu.
a20903d0
CY
943 (xmenu_show): New arg. Pass it to create_and_show_popup_menu.
944 (create_and_show_popup_menu): New arg. Pass it to gtk_menu_popup.
945
2de9f71c
SM
9462009-11-06 Stefan Monnier <monnier@iro.umontreal.ca>
947
948 Let integers use up 2 tags to give them one extra bit and thus double
949 their range.
950 * lisp.h (USE_2_TAGS_FOR_INTS): New macro.
951 (LISP_INT_TAG, case_Lisp_Int, LISP_STRING_TAG, LISP_INT_TAG_P):
952 New macros.
953 (enum Lisp_Type): Use them. Give explicit values.
954 (Lisp_Type_Limit): Remove.
955 (XINT, XUINT, make_number) [!USE_LISP_UNION_TYPE]:
956 (MOST_NEGATIVE_FIXNUM, MOST_POSITIVE_FIXNUM, INTMASK):
957 Pay attention to USE_2_TAGS_FOR_INTS.
958 (INTEGERP): Use LISP_INT_TAG_P.
959 * fns.c (internal_equal): Simplify the default case.
960 (sxhash): Use case_Lisp_Int.
961 * data.c (wrong_type_argument): Don't check against Lisp_Type_Limit
962 any more.
963 (Ftype_of): Use case_Lisp_Int.
964 (store_symval_forwarding): Take into account the fact that Ints can
965 now have more than one tag.
966 * buffer.c (syms_of_buffer): Use LISP_INT_TAG.
967 buffer_slot_type_mismatch):
968 * xfaces.c (face_attr_equal_p):
969 * print.c (print_object):
970 * alloc.c (mark_maybe_object, mark_object, survives_gc_p):
971 Use case_Lisp_Int.
972
323637a2
EZ
9732009-11-06 Eli Zaretskii <eliz@gnu.org>
974
7ac65b38
EZ
975 * s/msdos.h (SYSTEM_PURESIZE_EXTRA): Reduce by further 30K.
976
323637a2
EZ
977 * alloc.c (make_pure_c_string): Fix last change to avoid compiler
978 warning.
979
e511451f
JD
9802009-11-06 Jan Djärv <jan.h.d@swipnet.se>
981
982 * gtkutil.c (xg_event_is_for_scrollbar): New function (bug#4870).
983
984 * gtkutil.h: Declare xg_event_is_for_scrollbar (bug#4870).
985
986 * xterm.c (handle_one_xevent): Call xg_event_is_for_scrollbar for
987 ButtonPressRelease and MotionNotify (bug#4870).
988
5e2327cf
DN
9892009-11-06 Dan Nicolaescu <dann@ics.uci.edu>
990
5adc433e
DN
991 * keymap.c (syms_of_keymap): Construct exclude_keys in pure memory.
992
d67b4f80
DN
993 * xterm.c (syms_of_xterm):
994 * xselect.c (syms_of_xselect):
995 * xmenu.c (syms_of_xmenu):
996 * xfns.c (syms_of_xfns):
997 * xfaces.c (syms_of_xfaces):
998 * xdisp.c (syms_of_xdisp):
999 * window.c (syms_of_window):
1000 * w32fns.c (syms_of_w32fns):
1001 * undo.c (syms_of_undo):
1002 * textprop.c (syms_of_textprop):
1003 * terminal.c (syms_of_terminal):
1004 * syntax.c (syms_of_syntax):
1005 * sound.c (syms_of_sound):
1006 * search.c (syms_of_search):
1007 * print.c (syms_of_print):
1008 * minibuf.c (syms_of_minibuf):
1009 * macros.c (syms_of_macros):
1010 * keymap.c (syms_of_keymap, initial_define_key)
1011 (initial_define_lispy_key):
1012 * keyboard.c (syms_of_keyboard):
1013 * insdel.c (syms_of_insdel):
1014 * image.c (syms_of_image):
1015 * fringe.c (syms_of_fringe):
1016 * frame.c (syms_of_frame):
1017 * fontset.c (syms_of_fontset):
1018 * fns.c (syms_of_fns):
1019 * fns.c (syms_of_fns):
1020 * fileio.c (syms_of_fileio):
1021 * fileio.c (syms_of_fileio):
1022 * eval.c (syms_of_eval):
1023 * doc.c (syms_of_doc):
1024 * dispnew.c (syms_of_display):
1025 * dired.c (syms_of_dired):
1026 * dbusbind.c (syms_of_dbusbind):
1027 * data.c (syms_of_data):
1028 * composite.c (syms_of_composite):
1029 * coding.c (syms_of_coding):
1030 * cmds.c (syms_of_cmds):
1031 * charset.c (define_charset_internal, syms_of_character):
1032 * ccl.c (syms_of_ccl):
1033 * category.c (syms_of_category, init_category_once):
1034 * casetab.c (syms_of_casetab):
1035 * casefiddle.c (syms_of_casefiddle):
1036 * callint.c (syms_of_callint):
1037 * bytecode.c (syms_of_bytecode):
1038 * buffer.c (keys_of_buffer, syms_of_buffer):
1039 * alloc.c (syms_of_alloc):
1040 * process.c (syms_of_process, init_process):
1041 * lread.c (syms_of_lread, init_obarray):
1042 * font.c (build_style_table):
1043 * emacs.c (syms_of_emacs, main): Replace calls to intern with
1044 intern_c_string, calls to make_pure_string with
1045 make_pure_c_string. Use pure_cons instead of Fcons.
1046
5e2327cf
DN
1047 * process.c (socket_options): Make it const.
1048 (set_socket_option, init_process): Use a const pointer.
1049
1050 * lread.c (intern_c_string): New function.
1051 (defvar_kboard, defvar_lisp, defvar_lisp_nopro, defvar_bool)
1052 (defvar_int): Uset it. Make the name const char*.
1053
1054 * lisp.h (defvar_kboard, defvar_lisp, defvar_lisp_nopro, defvar_bool)
1055 (defvar_int): Update prototypes.
1056 (DEFUN, EXFUN): Support for prototypes is now required.
1057 (intern_c_string): New prototype.
1058 (struct Lisp_Subr): Make symbol_name constant.
1059
1060 * font.c (struct table_entry): Remove unused member. Make NAMES
1061 constant.
1062 (weight_table, slant_table, width_table): Make constant.
1063
1064 * emacs.c (struct standard_args): Make name and longname constant.
1065
1066 * character.h (DEFSYM): Use intern_c_string.
1067
a56eaaef
DN
10682009-11-06 Stefan Monnier <monnier@iro.umontreal.ca>
1069
1070 * alloc.c (make_pure_c_string): New function.
1071
1072 * eval.c (Fautoload): Purecopy all arguments.
1073
f6a07420
KH
10742009-11-05 Kenichi Handa <handa@m17n.org>
1075
1076 * fileio.c (Finsert_file_contents): Be sure set coding-system of
1077 the buffer in case of replace.
1078
5d28d4b1
DN
10792009-11-04 Dan Nicolaescu <dann@ics.uci.edu>
1080
1081 * puresize.h (BASE_PURESIZE): Increase to 1620000.
1082
b349d111
SM
10832009-11-03 Stefan Monnier <monnier@iro.umontreal.ca>
1084
d528b1ce
SM
1085 * editfns.c (save_restriction_restore): Update the (pt/begv/vz)_markers
1086 when applicable (bug#4851).
1087
b349d111
SM
1088 * lisp.h: Make USE_LSB_TAG work with USE_LISP_UNION_TYPE.
1089 (P_): Support for prototypes is now required.
1090
c38eb027
CY
10912009-10-31 Chong Yidong <cyd@stupidchicken.com>
1092
1093 * frame.c (Fmake_frame_invisible, Fframe_visible_p): Doc fix
1094 (Bug#4827).
1095
0405f8d9
EZ
10962009-10-30 Eli Zaretskii <eliz@gnu.org>
1097
d528b1ce 1098 * s/msdos.h (SYSTEM_PURESIZE_EXTRA): Redefine to waste less pure space.
0405f8d9 1099
ca0a881a
DN
11002009-10-30 Dan Nicolaescu <dann@ics.uci.edu>
1101
1102 * puresize.h (BASE_PURESIZE): Increase to 1470000.
1103
d528b1ce
SM
1104 * lread.c (Fload): Purecopy the file name when building
1105 Vpreloaded_file_list.
ca0a881a 1106
47e0e0e4
JR
11072009-10-29 Jason Rumney <jasonr@wanchan.jasonrumney.net>
1108
1109 * w32fns.c (syms_of_w32fns): Change default value of
1110 w32-scroll-lock-modifier to nil. (Bug#2827)
1111
057bce6f
JB
11122009-10-26 Juanma Barranquero <lekktu@gmail.com>
1113
782a943e 1114 * minibuf.c (Fall_completions): Fix typos in docstring.
057bce6f 1115
242bc74c
AS
11162009-10-26 Andreas Schwab <schwab@redhat.com>
1117
1118 * puresize.h (PURESIZE_RATIO): Increase back to 10/6.
1119
522d013a
JB
11202009-10-26 Juanma Barranquero <lekktu@gmail.com>
1121
1122 * window.c (grow_mini_window): Comment out "delta >= 0" assertion.
1123 For delta < 0, skip check that only makes sense when the mini-window
1124 is going to be enlarged. (Bug#4534)
1125
18060980
CY
11262009-10-25 Chong Yidong <cyd@stupidchicken.com>
1127
1128 * keyboard.c (read_char_x_menu_prompt): Don't demand a prompt
1129 string in menu maps (Bug#4471).
1130
fec8f0fe
CY
11312009-10-24 Chong Yidong <cyd@stupidchicken.com>
1132
1133 * nsfns.m (ns_set_name, ns_set_name_as_filename): Don't call
1134 FRAME_NS_VIEW on terminal frames (Bug#4765).
1135
10d66ec0
AS
11362009-10-24 Andreas Schwab <schwab@linux-m68k.org>
1137
1cae01f7
AS
1138 * dbusbind.c (xd_retrieve_arg): Handle DBUS_TYPE_INTnn and
1139 DBUS_TYPE_UINTnn separately to get proper sign extension.
1140
58a12889
AS
1141 * dired.c (Ffile_attributes): Simplify now that FIXNUM_OVERFLOW_P
1142 can properly handle unsigned types.
d528b1ce 1143 (make_uid, make_gid): Remove.
58a12889 1144
987c9327
AS
1145 * lisp.h (FIXNUM_OVERFLOW_P): Fix last change to handle unsigned
1146 types again.
1147
522d013a 1148 * sysdep.c (procfs_ttyname): Fix sprintf format to match argument type.
10d66ec0
AS
1149 (system_process_attributes): Likewise.
1150
905a9ed3
DN
11512009-10-24 Dan Nicolaescu <dann@ics.uci.edu>
1152
1153 * keymap.c (Fmake_sparse_keymap): Purecopy the name.
1154
1155 * eval.c (Fautoload): Purecopy the filename. Simplify.
1156
1157 * category.c (Fdefine_category): Purecopy docstring.
1158
a599b3e8
AS
11592009-10-23 Andreas Schwab <schwab@linux-m68k.org>
1160
7b792fc9
AS
1161 * lisp.h (FIXNUM_OVERFLOW_P): Remove cast to avoid overflow.
1162
a599b3e8
AS
1163 * puresize.h (PURESIZE_RATIO): Decrease to 11/7.
1164
b35ac83e
CY
11652009-10-23 Chong Yidong <cyd@stupidchicken.com>
1166
1167 * window.c (Fwindow_edges, Fwindow_pixel_edges)
1168 (Fwindow_inside_edges, Fwindow_inside_pixel_edges): Doc fix
1169 (Bug#4775).
1170
e8903e00
SM
11712009-10-23 Stefan Monnier <monnier@iro.umontreal.ca>
1172
1173 * fileio.c (syms_of_fileio): Initialize Vdirectory_sep_char.
1174 (init_fileio_once):
1175 * lisp.h (init_fileio_once): Remove.
1176 * emacs.c (main): Don't call init_fileio_once.
1177
8f43cbf3
DN
11782009-10-23 Dan Nicolaescu <dann@ics.uci.edu>
1179
1180 * puresize.h (BASE_PURESIZE): Increase to 1430000.
1181
26898943
AS
11822009-10-21 Andreas Schwab <schwab@linux-m68k.org>
1183
1184 * doprnt.c (doprnt): Fix overflow check.
1185
5c646d5a
JD
11862009-10-21 Jan Djärv <jan.h.d@swipnet.se>
1187
3132a7ea
JD
1188 * xterm.c (x_term_init): Remove XSynchronize call done for debugging.
1189
5c646d5a
JD
1190 * xterm.h (x_wait_for_event): Declare it.
1191
1192 * xterm.c (pending_event_wait): New variable.
1193 (handle_one_xevent): Set pending_event_wait.eventtype to 0 if we
1194 see pending_event_wait.eventtype.
1195 (handle_one_xevent): Don't change gravity when parent changes.
d528b1ce
SM
1196 (x_new_font): Call change_frame_size with new rows/columns before we
1197 try to resize the frame.
5c646d5a 1198 (x_wait_for_event): New function.
d528b1ce
SM
1199 (x_set_window_size_1): Don't change gravity unless change_gravity
1200 is set.
5c646d5a
JD
1201 Call XResizeWindow with FRAME_OUTER_WINDOW. If we are visible,
1202 don't change frame size, instead wait for the ConfigureNotify.
1203 (x_set_window_size): Call x_set_window_size_1 for USE_X_TOOLKIT also.
1204 (x_wm_set_size_hint): Remove ifdefs for USE_X_TOOLKIT.
1205 (x_initialize): Initialize pending_event_wait.
1206
1207 * xmenu.c (set_frame_menubar): Add internal border width to menu bar
1208 size.
1209
1210 * widget.c (EmacsFrameSetValues): Add comment.
1211 (EmacsFrameSetCharSize): Just call x_set_window_size.
1212
1213 * gtkutil.c (xg_frame_set_char_size): Flush events and call
1214 x_wait_for_event.
d528b1ce 1215 (flush_and_sync): Remove again.
5c646d5a
JD
1216 (xg_get_font_name): Suggest monospace if no previous font is known.
1217
e9c1637d
SM
12182009-10-20 Stefan Monnier <monnier@iro.umontreal.ca>
1219
1220 * character.c (char_resolve_modifier_mask): Don't resolve meta to the
46be764e 1221 8th bit, since that only made sense in the ASCII world (bug#4751).
e9c1637d 1222
5a72cccb
YM
12232009-10-20 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1224
1225 * xterm.c (XTread_socket) [!USE_GTK && HAVE_X_I18N]: Don't quit
1226 processing pending events when event is filtered for input method.
ab04798f 1227 (Bug#3681)
5a72cccb 1228
2629aa37
JB
12292009-10-20 Juanma Barranquero <lekktu@gmail.com>
1230
1231 * fns.c: Add #endif accidentally removed in previous change.
1232
c3417a74
DN
12332009-10-19 Dan Nicolaescu <dann@ics.uci.edu>
1234
1235 * fns.c: Remove code for unsupported system: MAC_OS.
1236 * image.c: Likewise. Include setjmp.h.
1237
9685cef2
JD
12382009-10-19 Jan Djärv <jan.h.d@swipnet.se>
1239
1240 * xterm.c (x_create_toolkit_scroll_bar): Don't allocate color for
1241 pixel -1 (bug #4742).
1242
d7306fe6
DN
12432009-10-19 Dan Nicolaescu <dann@ics.uci.edu>
1244
019d2c4c
DN
1245 * process.c (create_pty): Remove conditionals for no longer
1246 supported systems: UNIPLUS and RTU.
1247
ee6bacd4
DN
1248 * xterm.c:
1249 * xfns.c: Remove always true condition: XtSpecificationRelease >= 5.
1250
d7306fe6
DN
1251 * alloc.c: Do not define struct catchtag.
1252 * eval.c: Move struct catchtag definition ...
1253 * lisp.h: ... here.
1254
1255 * image.c: Move png.h #include earlier to avoid warnings.
1256
1257 * xterm.c:
1258 * xsmfns.c:
1259 * xselect.c:
1260 * xrdb.c:
1261 * xmenu.c:
1262 * xftfont.c:
1263 * xfont.c:
1264 * xfns.c:
1265 * xfaces.c:
1266 * xdisp.c:
1267 * window.c:
1268 * widget.c:
1269 * w32xfns.c:
1270 * w32uniscribe.c:
1271 * w32term.c:
1272 * w32select.c:
1273 * w32reg.c:
1274 * w32proc.c:
1275 * w32menu.c:
1276 * w32inevt.c:
1277 * w32heap.c:
1278 * w32font.c:
1279 * w32fns.c:
1280 * w32console.c:
1281 * w32.c:
1282 * w16select.c:
1283 * vm-limit.c:
1284 * unexsol.c:
1285 * unexec.c:
1286 * unexcw.c:
1287 * unexaix.c:
1288 * undo.c:
1289 * tparam.c:
1290 * textprop.c:
1291 * terminfo.c:
1292 * terminal.c:
1293 * termcap.c:
1294 * term.c:
1295 * syntax.c:
1296 * sound.c:
1297 * sheap.c:
1298 * search.c:
1299 * scroll.c:
1300 * region-cache.c:
1301 * regex.c:
1302 * ralloc.c:
1303 * process.c:
1304 * print.c:
b024548b
DN
1305 * nsterm.m:
1306 * nsselect.m:
1307 * nsmenu.m:
1308 * nsimage.m:
1309 * nsfont.m:
1310 * nsfns.m:
d7306fe6
DN
1311 * msdos.c:
1312 * minibuf.c:
1313 * menu.c:
1314 * marker.c:
1315 * macros.c:
1316 * keymap.c:
1317 * keyboard.c:
1318 * intervals.c:
1319 * insdel.c:
1320 * indent.c:
1321 * gtkutil.c:
1322 * ftxfont.c:
1323 * ftfont.c:
1324 * fringe.c:
1325 * frame.c:
1326 * fontset.c:
1327 * font.c:
1328 * fns.c:
1329 * floatfns.c:
1330 * filelock.c:
1331 * fileio.c:
1332 * emacs.c:
1333 * editfns.c:
1334 * dosfns.c:
1335 * doprnt.c:
1336 * doc.c:
1337 * dispnew.c:
1338 * dired.c:
1339 * dbusbind.c:
1340 * data.c:
1341 * composite.c:
1342 * coding.c:
1343 * cmds.c:
1344 * cm.c:
1345 * chartab.c:
1346 * charset.c:
1347 * character.c:
1348 * ccl.c:
1349 * category.c:
1350 * casetab.c:
1351 * casefiddle.c:
1352 * callproc.c:
1353 * callint.c:
1354 * bytecode.c:
1355 * buffer.c:
1356 * atimer.c: Include setjmp.h. (Bug#4643)
1357
fd5f21e6
SM
13582009-10-18 Stefan Monnier <monnier@iro.umontreal.ca>
1359
4c0354d7
SM
1360 Remove leftover table unibyte_to_multibyte_table.
1361 * character.c (unibyte_to_multibyte_table): Remove.
1362 (Funibyte_char_to_multibyte): Use MAKE_CHAR_MULTIBYTE.
1363 * charset.c (init_charset_once): Don't init unibyte_to_multibyte_table.
1364 * character.h (UNIBYTE_TO_CHAR): New macro.
1365 (MAKE_CHAR_MULTIBYTE): Use it.
1366 (unibyte_to_multibyte_table, unibyte_char_to_multibyte): Remove.
1367 * xdisp.c (get_next_display_element): USE ASCII_CHAR_P.
1368 (message_dolog, set_message_1):
1369 * search.c (Freplace_match):
1370 * editfns.c (Fcompare_buffer_substrings):
1371 * fns.c (Fcompare_strings): Use MAKE_CHAR_MULTIBYTE.
1372 (concat):
1373 * insdel.c (copy_text, count_size_as_multibyte):
1374 Use ASCII_CHAR_P and BYTE8_TO_CHAR.
1375 * term.c (produce_glyphs):
1376 * syntax.c (skip_chars): Use BYTE8_TO_CHAR.
1377 * regex.c (RE_CHAR_TO_MULTIBYTE):
1378 * cmds.c (internal_self_insert):
1379 * buffer.h (FETCH_CHAR_AS_MULTIBYTE): Use UNIBYTE_TO_CHAR.
1380
fd5f21e6
SM
1381 * cmds.c (internal_self_insert): `c' is already in "multibyte" form.
1382
4418646e
DN
13832009-10-17 Dan Nicolaescu <dann@ics.uci.edu>
1384
1385 * puresize.h (BASE_PURESIZE): Increase to 1310000.
1386
35f5c1d2
JB
13872009-10-16 Juanma Barranquero <lekktu@gmail.com>
1388
1389 * buffer.c (Fbuffer_name): Doc fix. (Bug#4728)
1390
a0cd8f6b
AR
13912009-10-15 Adrian Robert <Adrian.B.Robert@gmail.com>
1392
1393 * nsterm.h (NS_HAVE_NSINTEGER): Back out and augment with CGFloat,
1394 still needed under Tiger.
1395
1396 * nsterm.m (EmacsView-conversationIdentifier): Arg is long.
1397
1398 * m/amdx86-64.h: Don't set LIB_STANDARD and START_FILES under
1399 __Apple__.
1400
1401 * m/intel386.h: Remove DARWIN_OS/_LP64 special case.
1402
01a8d3fa
KH
14032009-10-15 Kenichi Handa <handa@m17n.org>
1404
1405 * print.c (print_object): Escape a symbol like "2E10" too.
1406
bf6c75c9 14072009-10-11 Adrian Robert <Adrian.B.Robert@gmail.com>
6e4780c5
JB
1408
1409 Cleanups and changes for 64-bit compile under Snow Leopard.
1410 Based on suggestions by Erik Charlebois.
bf6c75c9
AR
1411
1412 * nsfns.m (xw-color-values): Use CGFloat where appropriate.
1413
c5959062 1414 * nsfont.m (ns_char_width): Replace deprecated call.
bf6c75c9
AR
1415 (ns_findfonts, nsfont_list_family): Use long format in printf, and
1416 cast argument.
1417 (nsfont_open): Use ns_char_width() everywhere.
d528b1ce 1418 (ns_uni_to_glyphs, NSGlyphStorage): Use NS[U]Integer where appropriate.
bf6c75c9
AR
1419
1420 * nsgui.h (NSPoint, NSSize) [!__OBJC__]: Define and use CGFloat.
1421
1422 * nsimage.m (EmacsImage-setXBMColor:,-getPixelAtX:Y:): Use CGFloat
1423 where appropriate.
1424
1425 * nsmenu.m (EmacsMenu-addItemWithWidgetValue:): Use NSInteger
1426 where appropriate.
6e4780c5
JB
1427 (EmacsToolbar-addDisplayItemWithImage:idx:helpText:enabled:):
1428 Use stringWithUTF8String.
bf6c75c9
AR
1429 (EmacsDialogPanel-initWithContentRect:styleMask:): Fix signature.
1430
6e4780c5
JB
1431 * nsterm.h (EmacsView, EmacsMenu, EmacsToolbar, EmacsTooltip):
1432 Add formal protocol mention to inheritance.
bf6c75c9
AR
1433 [NS_HAVE_NSINTEGER]: Drop conditional and contents.
1434
6e4780c5
JB
1435 * nsterm.m (ns_color_to_lisp): Use CGFloat where appropriate.
1436 Fix printf format.
bf6c75c9
AR
1437 (ns_query_color): Use CGFloat where appropriate.
1438 (EmacsView<NSTextInput>, EmacsScroller): Fix method signatures.
1439 (EmacsScroller-mouseDown:) Use long format in printf, and cast
1440 argument.
1441
3d87f118
AR
1442 * config.in (NS_HAVE_NSINTEGER): Drop.
1443
a95c8102
AR
1444 * dbusbind.c (dbus-method-return-internal)
1445 (dbus-method-error-internal): Use long format in printf, and cast
1446 argument.
1447
1448 * font.c (font_unparse_xlfd, font_unparse_fcname): Use long format
1449 in printf, and cast argument.
1450
6873acca 1451 * process.c (list_processes_1): Use long format in printf, and
a95c8102
AR
1452 cast argument.
1453
9ec6f100
GM
14542009-10-11 Glenn Morris <rgm@gnu.org>
1455
1456 * frame.c (Fframe_pixel_height): Doc fix. (Bug#4535)
1457
5be883cd
JD
14582009-10-08 Jan Djärv <jan.h.d@swipnet.se>
1459
1460 * gtkutil.c (create_menus): Call gtk_widget_set_size_request for
1461 menu bar with a small width so it doesn't enlarge the frame.
1462
d7a39b51
JB
14632009-10-08 Juanma Barranquero <lekktu@gmail.com>
1464
1465 * fontset.c (Fset_fontset_font): Fix typos in error messages.
1466
0c2b6f8e
GM
14672009-10-06 Glenn Morris <rgm@gnu.org>
1468
1469 * Makefile.in (emacs${EXEEXT}): Remove direct dependence on
1470 SOME_MACHINE_LISP (this enters indirectly via DOC).
1471
e02131a2
EZ
14722009-10-05 Eli Zaretskii <eliz@gnu.org>
1473
1474 * dired.c (Ffile_attributes): Doc fix. (Bug#4638)
1475
b4744254
EZ
14762009-10-04 Eli Zaretskii <eliz@gnu.org>
1477
1478 * xdisp.c (syms_of_xdisp) <unibyte-display-via-language-environment>:
1479 Doc fix.
1480
dbf64827
JB
14812009-10-03 Martin Rudalics <rudalics@gmx.at>
1482
1483 * window.c (Fdelete_window): Check WINDOW argument. (Bug#4618)
1484
e9a0aef8
MA
14852009-10-02 Michael Albinus <michael.albinus@gmx.de>
1486
d528b1ce 1487 * lisp.h (Qdelete_directory_internal): Remove, because it is not
e9a0aef8
MA
1488 used anymore outside fileio.c.
1489
1490 * w32fns.c (Fsystem_move_file_to_trash): Use delete-directory.
1491
64eb2b56
JB
14922009-10-01 Juanma Barranquero <lekktu@gmail.com>
1493
1494 * lisp.h (Qdelete_directory_internal):
1495 Declare, instead of Qdelete_directory.
1496
1497 * w32fns.c (Fsystem_move_file_to_trash): Use it.
1498
9d28c33e
SM
14992009-10-01 Stefan Monnier <monnier@iro.umontreal.ca>
1500
1501 * eval.c (Fcalled_interactively_p): Add `kind' argument.
1502
9d8f3bd9
MA
15032009-10-01 Michael Albinus <michael.albinus@gmx.de>
1504
9d28c33e 1505 * fileio.c (Fdelete_directory_internal): Rename from
9d8f3bd9
MA
1506 Fdelete_directory. It is not a command anymore. It has no file
1507 name handler.
1508
9694740b
SM
15092009-09-28 Stefan Monnier <monnier@iro.umontreal.ca>
1510
1511 * xdisp.c (get_next_display_element): Use an enum in last change.
1512
748e162f
KH
15132009-09-28 Kenichi Handa <handa@m17n.org>
1514
9694740b 1515 * xdisp.c (get_next_display_element): Pay attention to
748e162f
KH
1516 unibyte_display_via_language_environment in handling
1517 Vnobreak_char_display.
1518
17efd58d
AR
15192009-09-27 Adrian Robert <Adrian.B.Robert@gmail.com>
1520
1521 * nsterm.h (ns_app_name): New extern variable.
1522
1523 * nsterm.m (ns_app_name): New variable.
1524 (ns_term_init): Set and use it.
1525 (ns_term_shutdown): Use it.
1526
1527 * nsmenu.m (ns_update_menubar): Use ns_app_name. Sync with xmenu.c.
1528 (EmacsMenu-clear:, ns_popup_dialog): Use ns_app_name.
1529
1530 * nsfns.m (ns_set_name_iconic, ns_set_name)
1531 (ns_set_name_as_filename, x-create-frame, ns-get-resource)
1532 (ns-set-resource): Use ns_app_name instead of NSProcessInfo call.
1533
9694740b
SM
1534 * menu.c (find_and_return_menu_selection) [HAVE_NS]:
1535 Remove double-casting in client_data comparison.
31c2d412 1536
3208cb35
YM
15372009-09-27 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1538
1539 * keyboard.c (make_lispy_event): Remember last wheel direction.
1540 (syms_of_keyboard) <wheel_syms>: Compute array size at compile time.
1541
b7d552d6
GM
15422009-09-26 Glenn Morris <rgm@gnu.org>
1543
1544 * Makefile.in (MSDOS_SUPPORT) [MSDOS]: Remove unneeded '/' in
1545 internal.elc. Add term/pc-win.elc.
1546 (WINDOW_SUPPORT) [HAVE_X_WINDOWS]: Add term/common-win.elc and
1547 term/x-win.elc.
1548 (WINNT_SUPPORT) [WINDOWSNT]: Add term/common-win.elc and
1549 term/w32-win.elc.
1550 (NS_SUPPORT): New.
1551 (lisp): Add NS_SUPPORT.
1552 (SOME_MACHINE_LISP): Add term/w32-win.elc and emacs-lisp/easymenu.elc.
1553
4ff670a8
DR
15542009-09-25 David Reitter <david.reitter@gmail.com>
1555
1556 * nsmenu.m (EmacsMenu-clear): Recognize application menu
1557 on Mac OS X 10.6+ (bug#4513).
1558
feabfb6c
JB
15592009-09-24 Juanma Barranquero <lekktu@gmail.com>
1560
1561 * frame.c (xrdb_get_resource): Return nil for empty string resources;
d528b1ce
SM
1562 some parts of Emacs code (like font selection) don't grok them.
1563 See http://lists.gnu.org/archive/html/emacs-devel/2009-09/msg00528.html
feabfb6c 1564
de59072a
AS
15652009-09-24 Andreas Schwab <schwab@redhat.com>
1566
1567 * coding.c (decode_coding_iso_2022): Fix operator precedence.
1568
a489517b
JB
15692009-09-24 Juanma Barranquero <lekktu@gmail.com>
1570
1571 * dired.c (Fdirectory_files): Fix typo in docstring.
1572
0592970c
AR
15732009-09-23 Adrian Robert <Adrian.B.Robert@gmail.com>
1574
1575 * nsterm.m (EV_TIMESTAMP, x_set_window_size)
1576 (EmacsApp-application:openFiles:): Remove GNUstep conditionals.
1577 (EmacsScroller-setPosition:portion:whole:): Remove -display call
1578 under GNUstep.
1579 (EmacsView-initFrameFromEmacs:): Set autoresizing mask.
1580
1581 * nsfont.m (ns_glyph_metrics): Remove GNUstep conditional for
1582 glyph advancement.
1583
48e8a88b
AR
15842009-09-22 Adrian Robert <Adrian.B.Robert@gmail.com>
1585
1586 * nsterm.m (CGContextSetFontRenderingMode): Drop declaration.
b3aac06a 1587 (EmacsScroller-mouseDown:): Use SCROLL_BAR_FIRST_DELAY.
48e8a88b
AR
1588
1589 * nsmenu.m (EmacsMenu-menuNeedsUpdate): Ignore if frame has been
1590 deleted (bug #4492).
1591
e14f0a78
AR
1592 * nsfont.m (Vns_reg_to_script): New lisp variable.
1593 (syms_of_nsfont): Declare it.
1594 (ns_registry_to_script): New function.
1595 (ns_get_req_script): Call it.
1596 (ns_findfonts): Don't give up on non-unicode registry.
1597
1598 * font.c (DEFAULT_ENCODING) [HAVE_NS]: Remove special case.
1599
5b650faa
SM
16002009-09-20 Tom Tromey <tromey@redhat.com>
1601
1602 * eval.c (find_handler_clause): Make stack-trace-on-error work in
1603 batch mode (bug#4228).
1604
a489517b 16052009-09-18 Rob Christie <robchristie@gmail.com> (tiny change)
0bae4e09
AR
1606
1607 * nsmenu.m (EmacsMenu-parseKeyEquiv:): Parse key equivalent more
a489517b 1608 carefully. (Bug #4339)
0bae4e09 1609
fcfe06f3
CY
16102009-09-18 Chong Yidong <cyd@stupidchicken.com>
1611
d798ba87 1612 * syntax.c (Fchar_syntax): Minor doc fix (Bug#4400).
fcfe06f3 1613
31642728
AR
16142009-09-18 Adrian Robert <Adrian.B.Robert@gmail.com>
1615
1616 * emacs.c (inhibit_x_resources): Update doc string for NS.
1617 (main) [HAVE_NS]: Don't process --no-init-file option. Remove
cff11156 1618 legacy code for -NXHost. Fix error printf in daemon case.
31642728
AR
1619
1620 * nsterm.h (ns_no_defaults): Remove.
1621
1622 * nsterm.m (ns_no_defaults): Remove.
1623 (ns_term_init): Switch ns_no_defaults -> inhibit_x_resources.
1624 (ns_use_qd_smoothing): Remove legacy variable.
6516d10a
AR
1625 (EmacsView-windowShouldZoom:): Set frame left_pos, top_pos and
1626 don't update the NSWindow itself.
1627 (EmacsView-windowWillUseStandardFrame:defaultFrame:): Improve
a489517b 1628 state detection and store user rect ourselves. (Bug #3581)
31642728
AR
1629
1630 * nsfont.m (nsfont_draw) [NS_IMPL_COCOA]: Don't use
1631 ns_use_qd_smoothing.
1632
1633 * nsfns.m (x_get_string_resource): Ape just-previous changes to other
1634 platform versions. Drop support for emacs-20-style face specs.
8aad0aea 1635 (x-close-connection): Drop PSFlush() under OS X.
a489517b 1636 (x-focus-frame): Activate the app first. (Bug #4180)
31642728 1637
8686ac71
JB
16382009-09-17 Juanma Barranquero <lekktu@gmail.com>
1639
1640 * emacs.c (inhibit_x_resources): New variable.
1641 (main) [HAVE_NS]: Don't process --quick command line option.
1642 (syms_of_emacs) <inhibit-x-resources>: DEFVAR_BOOL it.
1643
1644 * lisp.h (inhibit_x_resources): Declare it extern.
1645
1646 * w32reg.c (x_get_string_resource):
1647 * xrdb.c (x_get_string_resource): Obey inhibit_x_resources.
1648
e227ba05
EZ
16492009-09-17 Eli Zaretskii <eliz@gnu.org>
1650
362654a6
JB
1651 * Makefile.in (MSDOS_SUPPORT, SOME_MACHINE_LISP):
1652 Add lisp/term/internal.elc.
e227ba05 1653
742d40e8
SM
16542009-09-17 Stefan Monnier <monnier@iro.umontreal.ca>
1655
1656 * frame.c (x_get_resource_string): Re-add for non-toolkit builds
1657 (bug#4461).
1658
005bd5a2
DN
16592009-09-17 Dan Nicolaescu <dann@ics.uci.edu>
1660
1661 * puresize.h (BASE_PURESIZE): Increase to 1290000.
1662
1663 * Makefile.in (OTHER_FILES): Define using autoconf, not cpp.
1664 (OBJECTS_MACHINE): Remove, unused.
1665
f9af9719
SM
16662009-09-16 Stefan Monnier <monnier@iro.umontreal.ca>
1667
1668 * frame.c (x_get_resource_string): Remove unused.
1669
0307c7d2
JD
16702009-09-15 Jan Djärv <jan.h.d@swipnet.se>
1671
1672 * xterm.c (x_new_font): Call change_frame_size before calling
1673 x_set_window_size, in case frame size won't change.
1674
1675 * frame.c (x_set_font): Remove dead code.
1676
428b13d6
SM
16772009-09-15 Stefan Monnier <monnier@iro.umontreal.ca>
1678
1679 * lread.c (Fload): Also run do-after-load-evaluation while dumping.
1680
5766c380
SM
16812009-09-12 Stefan Monnier <monnier@iro.umontreal.ca>
1682
1683 * lread.c (Fload): Don't output a message after loading an obsolete
1684 package any more (done in Lisp now).
1685
2fd0161b
CY
16862009-09-12 Chong Yidong <cyd@stupidchicken.com>
1687
1688 * fns.c (syms_of_fns): Doc fix (Bug#4227).
1689
bc5e75b6
SM
16902009-09-12 Stefan Monnier <monnier@iro.umontreal.ca>
1691
1692 * keymap.c (Fwhere_is_internal): Use nconc2.
1693
c31c985e
AM
16942009-09-11 Alan Mackenzie <acm@muc.de>
1695
1696 * dispnew.c (Fsend_string_to_terminal): Amend doc string to cover
1697 batch mode.
1698
78012bd2
AS
16992009-09-11 Andreas Schwab <schwab@linux-m68k.org>
1700
1701 * xdisp.c (display_mode_element): Detect cycles.
1702
9d889332
SM
17032009-09-11 Stefan Monnier <monnier@iro.umontreal.ca>
1704
1705 * keymap.c (where_is_internal): Don't erroneously return nil right after
1706 filling the cache.
1707 (where_is_internal_1): Fix up typo.
1708
7ab5d780
GM
17092009-09-11 Glenn Morris <rgm@gnu.org>
1710
1711 * frame.c (Fx_parse_geometry): Unify the X and NS versions so that they
1712 share a common doc-string.
1713
5238a749
SM
17142009-09-11 Stefan Monnier <monnier@iro.umontreal.ca>
1715
66d77eda
SM
1716 * keymap.c (get_keymap): Return the actual keymap symbol rather than
1717 t for autoloaded keymaps when autoloading is not allowed (bug#4393).
1718
5238a749
SM
1719 * keymap.c (QCadvertised_binding): New constant.
1720 (syms_of_keymap): Initialize it.
1721 (Fwhere_is_internal): Try and use bindings from :advertised-binding
1722 if applicable.
1723
19f48442
SM
17242009-09-10 Stefan Monnier <monnier@iro.umontreal.ca>
1725
50d4ba39
SM
1726 * keyboard.c (Qmenu_alias, Vdefine_key_rebound_commands): Remove.
1727 (parse_menu_item): Streamline since bindings are recomputed all the
1728 time anyway. Don't bother checking Vdefine_key_rebound_commands any
1729 more and don't support lmenu's menu-alias any more either.
1730
a88a5372
SM
1731 * keymap.c (where_is_internal_data): Make noindirect a boolean.
1732 (where_is_internal): Strip it down to only traverse the keymaps.
1733 Move the cache handling from Fwhere_is_internal to here.
1734 (Fwhere_is_internal): Move the handling of remapping and the choice of
1735 the best binding from where_is_internal to here.
1736 Unify the cached/noncached paths, so remapping is also handled
1737 correctly when the cache is used, and so the cache can be used to
1738 speed up remap-handling when applicable.
1739 Give preference to non-remapped bindings.
1740 * doc.c (Fsubstitute_command_keys): Let Fwhere_is_internal's prefer
1741 non-remapped bindings.
1742 * keyboard.c (parse_menu_item): Let Fwhere_is_internal handle
1743 command remapping.
1744
19f48442
SM
1745 * xdisp.c (display_mode_element): Move list length limit from 50 to
1746 5000 (see thread starting with <xbaik5174uqu.fsf@cam.ac.uk>).
1747
599498c3 17482009-09-09 Adrian Robert <Adrian.B.Robert@gmail.com>
c1905ca3
AR
1749
1750 * nsfont.m (ns_get_family): Don't force first letter to uppercase.
1751
f9b7b5ac
SM
17522009-09-09 Stefan Monnier <monnier@iro.umontreal.ca>
1753
a53af587
JB
1754 * xdisp.c (Vtruncate_partial_width_windows): Improve docstring.
1755 (Bug#4334)
1756
f9b7b5ac
SM
1757 * keymap.c (where_is_internal): Filter out shadowed remappings.
1758 Assume that where_is_internal returns unshadowed bindings to simplify
1759 the code and get rid of the gotos. Use ASIZE.
1760
04f4b72d
JD
17612009-09-04 Jan Djärv <jan.h.d@swipnet.se>
1762
4da146f2
JD
1763 * xterm.c (x_focus_changed): If we get a focusout and pointer
1764 is invisible, make it visible.
1765
04f4b72d
JD
1766 * xterm.h: Remove condition for declaration of
1767 x_*_window_to_frame.
1768
7cef7ce3
SM
17692009-09-03 Stefan Monnier <monnier@iro.umontreal.ca>
1770
1771 * dispnew.c (Fsend_string_to_terminal): Make it work again on the
1772 initial terminal as well.
1773
a54fa5b7
JD
17742009-09-02 Jan Djärv <jan.h.d@swipnet.se>
1775
1776 * xterm.h: Rename x_non_menubar_window_to_frame to
7cef7ce3 1777 x_menubar_window_to_frame.
a54fa5b7
JD
1778
1779 * xterm.c: Remove declarations also in xterm.h
1780 (XTmouse_position): Do not return valid positions
1781 for clicks in the menubar and the toolbar for Gtk+.
1782
1783 * xfns.c (x_any_window_to_frame): Assume less about Gtk+ internals,
1784 if the widget for the event has the same top level as a frame,
1785 return the frame.
1786 (x_menubar_window_to_frame): Detect menu bar even with Gtk+
1787 internal windows, bug #4122.
1788 (x_non_menubar_window_to_frame): Remove.
1789
5a021dd0
GM
17902009-09-02 Glenn Morris <rgm@gnu.org>
1791
1792 * buffer.c (default-major-mode): Move most of the doc from here...
1793 (major-mode): ... to here.
1794
548fe2f3
NR
17952009-08-30 Nick Roberts <nickrob@snap.net.nz>
1796
1797 * process.c (wait_reading_process_output): Keep the descriptor
1798 when pty is used by a non-child process, e.g., in I/O buffer of
1799 GDB this allows inferior to be restarted.
1800
e0840eef
EZ
18012009-08-29 Eli Zaretskii <eliz@gnu.org>
1802
1803 * xdisp.c (redisplay_internal): Remove redundant test and collapse
1804 both branches into one.
1805
82e98df4
SM
18062009-08-29 Stefan Monnier <monnier@iro.umontreal.ca>
1807
1808 * emacs.c (USAGE1): Remove --(no-)multibyte, --(no-)unibyte.
1809 (main): Use enable-multibyte-characters rather than
1810 default-enable-multibyte-characters. Output a warning message when
1811 running a unibyte session.
1812
890617cb
YM
18132009-08-28 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1814
1815 * unexmacosx.c (print_load_command_name) [LC_DYLD_INFO]: Add cases
1816 LC_DYLD_INFO and LC_DYLD_INFO_ONLY.
1817 (copy_data_segment): Also copy __program_vars section.
1818 (copy_dyld_info) [LC_DYLD_INFO]: New function.
1819 (dump_it) [LC_DYLD_INFO]: Use it.
1820
1821 * s/darwin.h [temacs]: Undef HAVE_POSIX_MEMALIGN.
1822
e7adeadc
EZ
18232009-08-28 Eli Zaretskii <eliz@gnu.org>
1824
1825 * makefile.w32-in ($(BLD)/doc.$(O)): Depend on buildobj.h, not on
1826 $(SRC)/buildobj.h.
1827 (buildobj.h): Renamed from $(SRC)/buildobj.h.
1828 (make-buildobj-CMD, make-buildobj-SH): Create buildobj.h, not
1829 $(SRC)/buildobj.h.
1830 (clean): Add buildobj.h.
1831
3ed8bbdc
TZ
18322009-08-28 Teodor Zlatanov <tzz@lifelogs.com>
1833
1834 * print.c (print_object): Set escapeflag to 1 when printing
1835 hashtable keys and values.
1836
155a6764
SM
18372009-08-27 Stefan Monnier <monnier@iro.umontreal.ca>
1838
1839 * lread.c (read_integer): Use doubles (and potentially return a float
1840 number) as we do in string-to-number.
1841 (read1): Use strtol to read integers, signal errors on strtol's
1842 overflow and use floats if strtol's output is too large for
1843 Elisp integers.
1844
877610de
EZ
18452009-08-27 Eli Zaretskii <eliz@gnu.org>
1846
1847 * makefile.w32-in ($(SRC)/buildobj.h, make-buildobj-CMD)
1848 (make-buildobj-SH): Fix last change.
1849 (SRC): Move to before where it's first used.
1850
ef73e7be
KH
18512009-08-27 Kenichi Handa <handa@m17n.org>
1852
550c8289
KH
1853 * process.c (send_process): Use encode_coding_object instead of
1854 encode_coding_string to perform eol-conversion even if the string
1855 is unibyte.
1856
60afa08d
KH
1857 * coding.c (encode_coding_utf_16): Fix checking of a Unicode
1858 character.
1859
ef73e7be 1860 * cmds.c (Fself_insert_command): Avoid unnecessay
8a0b709a 1861 unibyte->multibyte conversion. (Bug#4240) (Bug#4037)
ef73e7be 1862
7b3a82d7
DN
18632009-08-26 Dan Nicolaescu <dann@ics.uci.edu>
1864
5654bf63
DN
1865 * callproc.c (Fcall_process): Remove always true #if.
1866
7b3a82d7
DN
1867 * lisp.h: Replace #if 0 code for checking with text pointing to
1868 the --enable-checking configure flag.
1869
1870 * emacs.c (main): Mention the --enable-profiling configure flag
1871 instead of using CFLAGS.
1872
878bde49
KR
18732009-08-26 Ken Raeburn <raeburn@raeburn.org>
1874
1875 * Makefile.in (buildobj.h): New target.
1876 (doc.o): Depend on it.
1877 (temacs${EXEEXT}): Don't generate buildobj.lst.
1878 (mostlyclean): Delete buildobj.h, not buildobj.lst.
1879 * makefile.w32-in ($(SRC)/buildobj.h): New target.
1880 ($(BLD)/doc.$(O)): Depend on it.
1881 (make-buildobj-CMD, make-buildobj-SH): New targets. (Syntax help
1882 provided by Eli Zaretskii.)
1883 ($(TEMACS)): Don't generate buildobj.lst.
1884 * doc.c: Include buildobj.h.
1885 (buildobj): New static variable.
1886 (Fsnarf_documentation): Use it, instead of opening and reading
1887 buildobj.lst.
1888
1574224c
MA
18892009-08-25 Michael Albinus <michael.albinus@gmx.de>
1890
1891 * dbusbind.c (Fdbus_call_method)
1892 (Fdbus_call_method_asynchronously): Use English numeric format for
1893 timeout values in doc string.
1894
d9da2f45
KH
18952009-08-25 Kenichi Handa <handa@m17n.org>
1896
ef73e7be
KH
1897 * alloc.c (mark_char_table): New function.
1898 (mark_object): Use mark_char_table for a char-table.
1899
d9da2f45
KH
1900 * lisp.h (CHAR_TABLE_REF_ASCII): New macro.
1901 (CHAR_TABLE_REF): Use it.
1902
c8edcc01
KR
19032009-08-23 Ken Raeburn <raeburn@raeburn.org>
1904
1905 * Makefile.in (emacs${EXEEXT}) [CANNOT_DUMP]: Set EMACSLOADPATH
1906 before invoking the newly build emacs to check for load-path
1907 shadowing.
1908
7763401b
GM
19092009-08-22 Glenn Morris <rgm@gnu.org>
1910
1911 * Makefile.in (bootstrap_exe): New variable.
1912 (.el.elc, ${lispsource}loaddefs.el, bootstrap-emacs${EXEEXT}):
1913 Use ${bootstrap_exe}.
1914
729eadda
EZ
19152009-08-22 Eli Zaretskii <eliz@gnu.org>
1916
1917 * coding.h (encode_coding_string): Don't encode unibyte strings.
1918 (Bug#4047)
1919
eb4c6ace
MA
19202009-08-22 Michael Albinus <michael.albinus@gmx.de>
1921
1922 * config.in (HAVE_DBUS_WATCH_GET_UNIX_FD): Add.
1923
1924 * dbusbind.c (XD_WITH_DBUS_WATCH_GET_UNIX_FD): Remove. It was
1925 intended as hotfix only.
1926 (xd_add_watch, xd_remove_watch): Use HAVE_DBUS_WATCH_GET_UNIX_FD.
1927
36e34d1b
AR
19282009-08-21 Adrian Robert <Adrian.B.Robert@gmail.com>
1929
1930 * nsterm.m (ns_get_color): Update documentation properly for last
1931 change, and clean up loose ends in the code left by it. Fix
1932 longstanding bug with 16-bit hex parsing, and add support for
1933 yet another X11 format (rgb:r/g/b) for compatibility.
1934 * nsfns.m (EmacsDialogPanel-runDialogAt): Add declaration of
1935 timer_check() to avoid crash on Leopard/PPC. Bug #2154.
1936
f983eb8a
SM
19372009-08-21 Stefan Monnier <monnier@iro.umontreal.ca>
1938
1939 * eval.c (init_eval_once): Bump max_lisp_eval_depth to 500 for js.el.
1940
3f56d3c6
MA
19412009-08-20 Michael Albinus <michael.albinus@gmx.de>
1942
1943 * dbusbind.c (XD_WITH_DBUS_WATCH_GET_UNIX_FD): New macro.
1944 (xd_add_watch, xd_remove_watch): Use it. Print debug messages.
1945 (xd_initialize, xd_pending_messages): Check, whether
1946 $DBUS_SESSION_BUS_ADDRESS is set.
1947
fb641d68
YM
19482009-08-20 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1949
1950 * nsfns.m (Fxw_color_values): Return 3-element list. Doc fix.
1951
1952 * nsterm.m (ns_get_color): Remove incompatible color formats again.
1953
cf59a374
GM
19542009-08-20 Glenn Morris <rgm@gnu.org>
1955
1956 * emacs.c (system-type): Doc fix.
1957
1373f3be
SM
19582009-08-19 Stefan Monnier <monnier@iro.umontreal.ca>
1959
1960 * keyboard.c (syms_of_keyboard): Default to 5 buttons, which should be
1961 enough for the most common situations. Avoid SET_SYMBOL_VALUE.
1962
058ed861
MA
19632009-08-18 Michael Albinus <michael.albinus@gmx.de>
1964
1373f3be
SM
1965 * dbusbind.c (xd_add_watch, xd_remove_watch, Fdbus_init_bus):
1966 New functions.
058ed861
MA
1967 (xd_initialize): Revert change from 2009-08-16.
1968
563a866e 19692009-08-18 Kenichi Handa <handa@m17n.org>
5fc05db0
KH
1970
1971 * fontset.c (Ffontset_font): If a nil element is found in a
563a866e 1972 font-group vector, return nil.
5fc05db0 1973
e42bdf01
CY
19742009-08-17 Chong Yidong <cyd@stupidchicken.com>
1975
1976 * process.c (status_notify): Don't perform redisplay.
1977 (Fdelete_process, list_processes_1, process_send_signal):
1978 Expliticly perform redisplay.
1979 (wait_reading_process_output): Always check process status, but
1980 don't perform redisplay unless DO_DISPLAY is non-zero (Bug#2930).
1981
4230ab74
KR
19822009-08-17 Ken Raeburn <raeburn@raeburn.org>
1983
1373f3be 1984 * lisp.h (XFLOAT_DATA): Produce an rvalue by adding 0 to the value.
f601cdf3
KR
1985 (XFLOAT_INIT): New macro for storing a float value.
1986 * alloc.c (make_float, make_pure_float): Use XFLOAT_INIT.
1987 * fns.c (sxhash): Copy out the value of a float in order to
1988 examine its bytes.
1989 * dbusbind.c (xd_append_arg): Likewise.
1990
4230ab74
KR
1991 * emacs.c (main): Don't call syms_of_data twice.
1992
a0645cdd
MA
19932009-08-16 Michael Albinus <michael.albinus@gmx.de>
1994
1995 * dbusbind.c (xd_initialize): Add connection file descriptor to
1996 input_wait_mask, in order to let select() detect, whether a new
1997 message has been arrived.
ca4f31ea 1998 (Fdbus_call_method_asynchronously): Allow nil HANDLER.
a0645cdd 1999
485db0ba
MA
20002009-08-15 Michael Albinus <michael.albinus@gmx.de>
2001
1373f3be
SM
2002 * dbusbind.c (xd_get_dispatch_status, xd_pending_messages):
2003 New functions.
485db0ba
MA
2004
2005 * lisp.h (xd_pending_messages): Declare.
2006
2007 * keyboard.c (readable_events): Call xd_pending_messages.
2008
b5b98ff4
CY
20092009-08-15 Chong Yidong <cyd@stupidchicken.com>
2010
1373f3be 2011 * eval.c (Fcalled_interactively_p, Finteractive_p): Doc fix (Bug#3936).
84b17ab0 2012
f8354c6e
CY
2013 * xdisp.c (pop_it): Don't pop into a display vector (Bug#4131).
2014
b5b98ff4
CY
2015 * buffer.c (set_buffer_internal_1)
2016 (swap_out_buffer_local_variables): Check for unbound local
2017 variables (Bug#4138).
2018
8b9fc636
EZ
20192009-08-14 Eli Zaretskii <eliz@gnu.org>
2020
2021 * process.c (create_pty): Fix last change.
2022
ce959360
CY
20232009-08-13 Chong Yidong <cyd@stupidchicken.com>
2024
2025 * image.c (xbm_read_bitmap_data): New arg inhibit_image_error.
2026 (xbm_load_image): Caller changed.
64b807c9 2027 (xbm_file_p): Avoid signalling an image_error (Bug#4107).
ce959360 2028
c7baf7e9
NR
20292009-08-13 Nick Roberts <nickrob@snap.net.nz>
2030
2031 * process.c (create_pty): New function.
2032 (Fstart_process): Use it to allow Emacs to just associate a pty
2033 with the buffer. See associated change in gdb-mi.el.
2034 (list_processes_1): Deal with no program name.
2035 (start_process_unwind): Use pid == -2 to mean no process.
2036
1ac9108a
SM
20372009-08-12 Stefan Monnier <monnier@iro.umontreal.ca>
2038
2039 * cmds.c (nonundocount): New global variable.
2040 (keys_of_cmds): Initialize it.
2041 (Fself_insert_command): Use it to combine upto 20 sequential chars
2042 into a single undo entry, just like the Qself_insert_command code in
2043 keyboard.c does.
2044 Call frame_make_pointer_invisible, also like the Qself_insert_command
2045 code in keyboard.c does.
2046 * keyboard.c (command_loop_1): Use the new global nonundocount rather
2047 than its own local replacement for it.
2048
e267324c
KR
20492009-08-10 Ken Raeburn <raeburn@raeburn.org>
2050
1ac9108a 2051 * fns.c (concat): Don't re-set string length to its current value.
77437343 2052
1ac9108a
SM
2053 * coding.h (decode_coding_string, encode_coding_string):
2054 Use SBYTES macro.
f0bed503 2055
1ac9108a 2056 * doprnt.c (doprnt_lisp): Delete unused function.
e267324c
KR
2057 (doprnt): Merge with doprnt1, discarding lispstrings code.
2058 * lisp.h (doprnt_lisp): Don't declare.
2059
416e006d
JL
20602009-08-07 Juri Linkov <juri@jurta.org>
2061
2062 * puresize.h (BASE_PURESIZE): Increase to 1270000.
2063
6f7d5780
DN
20642009-08-07 Dan Nicolaescu <dann@ics.uci.edu>
2065
2066 * print.c (syms_of_print): Undo previous change.
2067
f19a0f5b
TZ
20682009-08-05 Teodor Zlatanov <tzz@lifelogs.com>
2069
2070 * lread.c (read1, syms_of_lread): Read hashtables back from the
2071 readable format.
2072
2073 * print.c (print_preprocess, print_object): Print hashtables fully
2074 and readably.
2075 (syms_of_print): Provide 'hashtable-print-readable.
2076
b9173dc2
AR
20772009-08-02 Adrian Robert <Adrian.B.Robert@gmail.com>
2078
2079 * nsfont.m (ns_descriptor_to_entity): Handle case when descriptor has
2080 no family set.
2081 (nsfont_open): Handle case when entity has no family.
2082
1586503c
AR
20832009-07-29 Adrian Robert <Adrian.B.Robert@gmail.com>
2084
2085 * nsfont.m (ns_findfonts): Fix 2009-07-24 change to return only one
2086 element, not a list, for match case.
2087
087048cd
KH
20882009-07-28 Kenichi Handa <handa@m17n.org>
2089
2090 * font.c (font_parse_xlfd): Check DPI and AVGWIDTH properties more
2091 rigidly.
2092
2093 * xfont.c (xfont_list_pattern): Don't ignore the return value of
2094 font_parse_xlfd. Check font properties more rigidly.
2095
780c2506
DN
20962009-07-27 Dan Nicolaescu <dann@ics.uci.edu>
2097
31fd7c5c
JB
2098 * s/netbsd.h (SIGNALS_VIA_CHARACTERS): Remove, already defined in
2099 bsd-common.h.
780c2506 2100
a8c0cc18
KH
21012009-07-27 Kenichi Handa <handa@m17n.org>
2102
2103 * xfaces.c (face_with_height): Call font_clear_prop.
2104
4fbe2306
CY
21052009-07-26 Chong Yidong <cyd@stupidchicken.com>
2106
111d9af3
CY
2107 * dispnew.c (init_display): Use Qx, Qw32, and Qns.
2108
2109 * xterm.c (x_term_init): Use Qx.
2110
4fbe2306
CY
2111 * nsfont.m (nsfont_draw): Revert 2009-07-15 change.
2112
1ac9108a 2113 * nsterm.m (ns_maybe_dumpglyphs_background): Revert 2009-07-15 change.
4fbe2306
CY
2114 (ns_get_color): Revert 2009-07-16 change.
2115
beb0b7f9
EZ
21162009-07-25 Eli Zaretskii <eliz@gnu.org>
2117
2118 * lread.c (syms_of_lread) <force_load_messages>: New variable.
1ac9108a 2119 (Fload): Use it to force load messages, even if NOMESSAGES is non-nil.
beb0b7f9 2120
2baf5e76
KR
21212009-07-25 Ken Raeburn <raeburn@raeburn.org>
2122
1ac9108a
SM
2123 * coding.h (decode_coding_string, encode_coding_string):
2124 Use SCHARS macro.
8890e5f5 2125
2baf5e76 2126 * lread.c: Rewrite 2009-07-21 changes.
1ac9108a 2127 (load_depth): Delete.
2baf5e76
KR
2128 (Qload_in_progress): New variable.
2129 (load_unwind): Don't reference load_depth or load_in_progress.
2130 (Fload): Likewise; specbind Qload_in_progress instead.
2131 (init_lread): Don't initialize load_depth.
2132 (syms_of_lread): Initialize and protect Qload_in_progress.
2133
1395c6f5
AR
21342009-07-24 Adrian Robert <Adrian.B.Robert@gmail.com>
2135
2136 * nsfont.m (ns_findfonts): Correctly return fallback in match case.
2137
4e2f36cf
AR
21382009-07-23 Yavor Doganov <yavor@gnu.org>
2139
2140 * nsfont.m (NSFontDescriptor.h): Explicitly include under GNUstep.
2141
5dd9a6f7
AR
21422009-07-23 Adrian Robert <Adrian.B.Robert@gmail.com>
2143
2144 * nsterm.m (EmacsView-keyUp:): Only act when running under Tiger.
7f6ad209
AR
2145 Bugs 3792, 3720, 2402.
2146 (ns_lookup_indexed_color): Check for bad index.
2147 (ns_index_color): Init unused slot to 0.
2148 (ns_dumpglyphs_box_or_relief): Replace useless xassert with an if().
2149 Bug 3714, possibly 3082.
5dd9a6f7 2150
c902b920
JR
21512009-07-22 Jason Rumney <jasonr@gnu.org>
2152
1ac9108a
SM
2153 * w32fns.c (w32_wnd_proc) [WM_IME_STARTCOMPOSITION]:
2154 Position IME window at cursor (Bug#2570).
c902b920
JR
2155 (w32_wnd_proc) [WM_IME_CHAR]: Release context when finished.
2156 (globals_of_w32fns): Dynamically load functions required above.
2157
2158 * w32term.c (w32_draw_window_cursor): Send message to reposition
2159 any IME window.
2160
090101cf
CY
21612009-07-21 Chong Yidong <cyd@stupidchicken.com>
2162
2163 * fileio.c: Revert 2009-07-16 changes.
2164 (Vauto_save_include_big_deletions): New variable.
2165 (Fdo_auto_save): Disable auto-save only if
2166 auto-save-include-big-deletions is nil.
2167
e6583e3d
CY
21682009-07-21 Chong Yidong <cyd@stupidchicken.com>
2169
2170 * xdisp.c (move_it_to): For continued lines ending in a tab, take
2171 the overflowed pixels into account (Bug#3879).
2172
ece435a5
KR
21732009-07-21 Ken Raeburn <raeburn@raeburn.org>
2174
2175 * lread.c (load_depth): New variable.
2176 (Fload, load_unwind, init_lread): Set it to the load recursion
2177 depth; set load_in_progress as a simple boolean based on the
2178 current load_depth. (Bug#3892)
2179
40b2d973
AR
21802009-07-20 Adrian Robert <Adrian.B.Robert@gmail.com>
2181
2182 * nsfont.m (ns_has_attribute): Remove.
2183 (ns_findfonts, nsfont_open): Use ns_attribute_fvalue() instead.
2184
10be7e0d
JL
21852009-07-18 Juri Linkov <juri@jurta.org>
2186
2187 * process.c (Fset_process_query_on_exit_flag): Mention killing
2188 a buffer in docstring.
2189
fa055055
KH
21902009-07-17 Kenichi Handa <handa@m17n.org>
2191
2192 * casetab.c (shuffle): Fix the logic of setting up the cycle.
2193
042f7b69
YM
21942009-07-16 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
2195
2196 * nsfns.m (Fns_set_alpha): Remove function.
2197 (syms_of_nsfns): Don't defsubr it.
2198
2199 * nsterm.m (ns_get_color): Remove incompatible color formats.
2200 (ns_color_to_lisp): Generate #rrggbb color format string.
2201
4be941e3
RS
22022009-07-16 Richard Stallman <rms@gnu.org>
2203
2204 * fileio.c (Fwrite_region, Fdo_auto_save): Handle save_length = -2.
2205 (Fset_buffer_auto_saved): Handle save_length = -2.
2206
4e6b227d
CY
22072009-07-16 Chong Yidong <cyd@stupidchicken.com>
2208
2209 * xterm.c (Qx_gtk_map_stock): New var.
2210
2211 * gtkutil.c (update_frame_tool_bar): Use Qx_gtk_map_stock instead
2212 of calling intern each time.
2213
a1856973
YM
22142009-07-15 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
2215
2216 * nsfont.m (nsfont_draw): Remove code for stippling, which actually
2217 does tiling.
2218
2219 * nsterm.m (ns_maybe_dumpglyphs_background): Likewise.
2220
497e54d8
KH
22212009-07-14 Kenichi Handa <handa@m17n.org>
2222
72d36834
KH
2223 * font.c (font_vconcat_entity_vectors): New function.
2224 (struct font_sort_data): New member font_driver_preference.
2225 (font_compare): Check font_driver_preference.
2226 (font_sort_entities): The format of the first argument changed.
2227 (font_delete_unmatched): Likewise.
2228 (font_list_entities): The return type changed.
2229 (font_select_entity): The format of the second argument changed.
1ac9108a
SM
2230 (font_find_for_lface): Adjuste for the above changes.
2231 Don't suppress the checking of C even if the repertory supports it.
2232 (Flist_fonts): Adjust for the above changes.
72d36834 2233
1ac9108a
SM
2234 * ftfont.c (ftfont_spec_pattern): New arg langname. Change caller.
2235 (ftfont_list): Adjust for the change of ftfont_spec_pattern.
497e54d8
KH
2236 Reject a font who has adstyle property that is different from a
2237 langname derived from registry property.
1ac9108a 2238 (ftfont_match): Adjust for the change of ftfont_spec_pattern.
497e54d8 2239
b6046155
EZ
22402009-07-13 Eli Zaretskii <eliz@gnu.org>
2241
2242 * dired.c (directory_files_internal) [WINDOWSNT]: Don't make a
2243 local copy of dirfilename.
2244
fb6b6049
KH
22452009-07-13 Kenichi Handa <handa@m17n.org>
2246
e2402a5e
KH
2247 * chartab.c (sub_char_table_ref_and_range): Fix the range check
2248 against max_char.
2249
fb6b6049
KH
2250 * cmds.c (internal_self_insert): Check sym by SYMBOLP before
2251 calling XSYMBOL (sym).
2252
65156807
EZ
22532009-07-11 Eli Zaretskii <eliz@gnu.org>
2254
1ac9108a
SM
2255 * dired.c (directory_files_internal_w32_unwind) [WINDOWSNT]:
2256 New function.
2257 (directory_files_internal) [WINDOWSNT]:
2258 Bind w32-get-true-file-attributes to either t or nil, depending whether
65156807
EZ
2259 the filesystem of the directory is fast or slow.
2260
2261 * w32.c (logon_network_drive): Don't assume PATH is an absolute
2262 file name.
2263 (is_slow_fs): New function.
2264 (stat): Use it to determine whether to issue more system calls to
2265 get accurate file attributes, when w32-get-true-file-attributes is
2266 `local'.
2267
e0ab5fcf
JD
22682009-07-10 Jan Djärv <jan.h.d@swipnet.se>
2269
2270 * xfns.c (Fx_select_font): Remember last font selected in
31fd7c5c 2271 x_last_font_name and use that the next time. Also try the frame
e0ab5fcf
JD
2272 parameter font-parameter as default to the font dialog.
2273
784ceded
KH
22742009-07-10 Kenichi Handa <handa@m17n.org>
2275
2276 * xftfont.c (xftfont_open): Fix typo: FC_RGBA->FC_HINT_STYLE.
2277
fb8edc0b
EZ
22782009-07-09 Eli Zaretskii <eliz@gnu.org>
2279
1ac9108a 2280 * w32proc.c (syms_of_ntproc) <w32-get-true-file-attributes>: Doc fix.
017dab84 2281
fb8edc0b
EZ
2282 * w32.c (stat): Treat UNC file names as residing on remote
2283 drives. (Bug#3542)
2284
635c75b1
KH
22852009-07-09 Kenichi Handa <handa@m17n.org>
2286
2287 * fontset.c (fontset_find_font): Fix previous change.
2288
c1d5ce94
MA
22892009-07-08 Michael Albinus <michael.albinus@gmx.de>
2290
2291 * dbusbind.c (xd_initialize, Fdbus_call_method, xd_read_message)
2292 (Fdbus_register_signal, Fdbus_register_method): Cleanup memory of
2293 error flag.
2294
edb61b39
KH
22952009-07-08 Kenichi Handa <handa@m17n.org>
2296
374bf7e4
KH
2297 * fontset.c (fontset_find_font): Fix the logic of handling
2298 charset_matched.
2299 (font_for_char): Delete unused var.
2300 (generate_ascii_font_name): Delete it.
2301
edb61b39
KH
2302 * coding.h (JIS_TO_SJIS2): Fix the code range check.
2303
2304 * coding.c (detect_coding_sjis): Handle shift_jis-2004 correctly.
2305 (encode_coding_sjis): Fix the code range check.
2306
0f3f018c
CY
23072009-07-07 Chong Yidong <cyd@stupidchicken.com>
2308
2309 * fileio.c (Fsubstitute_in_file_name, Ffile_name_directory)
2310 (Fexpand_file_name): Copy string data properly (Bug#3772).
2311
fcaf6f3a
JD
23122009-07-07 Jan Djärv <jan.h.d@swipnet.se>
2313
2314 * xterm.c (handle_one_xevent): Only call x_check_fullscreen on the
2315 first MapNotify.
2316
6809ca75
KH
23172009-07-07 Kenichi Handa <handa@m17n.org>
2318
2319 * character.h (unibyte_has_multibyte_table): Delete extern.
2320 (UNIBYTE_CHAR_HAS_MULTIBYTE_P): Delete it.
2321
2322 * charset.c (Fset_charset_priority): Update charset_unibyte.
2323 (syms_of_charset): Initialize charset_unibyte.
2324
2325 * character.c (unibyte_has_multibyte_table): Delete it.
2326 (multibyte_char_to_unibyte): Use CHAR_TO_BYTE8 instead of checking
2327 charset_unibyte.
2328 (multibyte_char_to_unibyte_safe): Likewise.
2329 (Funibyte_char_to_multibyte): Don't check charset_unibyte.
2330
1ac9108a 2331 * xdisp.c (get_next_display_element): Decode it->c by charset_unibyte.
6809ca75
KH
2332 (x_produce_glyphs): Likewise.
2333
2334 * .gdbinit (xcharset): Fix the treating $arg0.
2335
ad9e2d54
EZ
23362009-07-04 Eli Zaretskii <eliz@gnu.org>
2337
2338 Emulation of `getloadavg' on MS-Windows.
2339 * w32.c: Include float.h
2340 (g_b_init_get_native_system_info, g_b_init_get_system_times)
2341 (GetNativeSystemInfo_Proc, GetSystemTimes_Proc): Declare.
2342 (get_native_system_info, get_system_times): New functions.
2343 (buf_next, buf_prev, sample_system_load, getavg): New subroutines.
2344 (getloadavg): Rewrite using GetSystemTimes and GetNativeSystemInfo.
2345 (globals_of_w32): Initialize g_b_init_get_native_system_info,
2346 g_b_init_get_system_times, and num_of_processors.
2347
0a3472c7
JR
23482009-07-03 Jason Rumney <jasonr@gnu.org>
2349
2350 * w32term.c (w32_initialize): Use standard types.
2351
80904120
EZ
23522009-07-03 Eli Zaretskii <eliz@gnu.org>
2353
2354 * dired.c (Ffile_attributes): Decode user and group names by the
2355 locale's encoding. (Bug#3443)
2356
6978862d
DN
23572009-07-03 Dan Nicolaescu <dann@ics.uci.edu>
2358
f8d23104
DN
2359 * sysdep.c (sys_suspend): Remove USG_JOBCTRL #ifdef, unused.
2360 (mkdir): Remove MKDIR_PROTOTYPE #ifdef, unused.
2361
2362 * callproc.c (child_setup): Use #else instead of a separate #ifdef.
2363
2364 * term.c (init_tty): Remove spurious #ifdef.
2365
6978862d
DN
2366 * m/mips.h: Mention this file is also used for netbsd.
2367 * m/pmax.h: Remove file.
2368
e044e4fc
JD
23692009-07-03 Jan Djärv <jan.h.d@swipnet.se>
2370
2371 * xterm.h (struct x_display_info): Add invisible_cursor.
2372 (struct x_output): Add current_cursor.
2373
2374 * xterm.c (XTtoggle_invisible_pointer): New function.
2375 (x_define_frame_cursor): Don't define cursor if invisible or the
2376 same as before. Set current_cursor.
2377 (x_create_terminal): Set toggle_invisible_pointer_hook.
2378
2379 * xfns.c (make_invisible_cursor): New function.
2380 (x_set_mouse_color): Call make_invisible_cursor.
2381 Set current_cursor.
2382 (x_window): Set current_cursor.
2383
2384 * termhooks.h (struct terminal): Add toggle_invisible_pointer_hook.
2385
2386 * keyboard.c (command_loop_1): Call frame_make_pointer_invisible after
2387 inserting a character.
2388 (read_avail_input): Call frame_make_pointer_visible.
2389
2390 * frame.c (Vmake_pointer_invisible): New variable.
1ac9108a
SM
2391 (frame_make_pointer_invisible, frame_make_pointer_visible):
2392 New functions.
e044e4fc
JD
2393 (syms_of_frame): DEFVAR make-pointer-invisible, initialize to Qt.
2394
2395 * frame.h: Declare frame_make_pointer_invisible and
2396 frame_make_pointer_visible.
2397 (struct frame): Add pointer_invisible.
2398
574c8efa
JD
23992009-07-02 Jan Djärv <jan.h.d@swipnet.se>
2400
7b507248
JD
2401 * gtkutil.c (xg_frame_set_char_size): Do set width/height if the
2402 frame isn't visible.
2403 (xg_frame_resized): If width/height is -1, get size of window
2404 from X server.
2405
2406 * xterm.c (handle_one_xevent): Call xg_frame_resized for USE_GTK
2407 for MapNotify.
2408
835bdaa7 2409 * gtkutil.c (xg_frame_set_char_size): Do not set pixel width/height
31fd7c5c 2410 here or call change_frame_size. Just call flush_and_sync.
1ac9108a 2411 (flush_and_sync): Reintroduce.
574c8efa 2412
3f1c6666 24132009-07-01 Jan Djärv <jan.h.d@swipnet.se>
69b16610 2414
31fd7c5c 2415 * xterm.h (struct x_display_info): Add Xatom_net_wm_state_sticky.
acd51077
JD
2416
2417 * xterm.c (x_handle_net_wm_state): Also look for sticky.
2418 (x_term_init): Initialize Xatom_net_wm_state_sticky.
2419
2420 * frame.h: Declare Qsticky.
2421
cad9ef74
JD
2422 * w32fns.c (w32_frame_parm_handlers): Set 0 for sticky.
2423
2424 * nsfns.m (ns_frame_parm_handlers): Ditto.
2425
2426 * frame.c: Declare Qsticky.
2427 (frame_parms): Add sticky.
2428
2429 * xfns.c (x_frame_parm_handlers): Let x_set_sticky handle sticky.
2430
2431 * xterm.h: Declare x_set_sticky.
2432
2433 * xterm.c (x_set_sticky): New function.
2434
69b16610
JD
2435 * gtkutil.c (xg_tool_bar_proxy_help_callback): New function.
2436 (xg_tool_bar_menu_proxy): Attach enter/leave events to
2437 xg_tool_bar_proxy_help_callback.
3f1c6666
JD
2438
2439 * emacs.c (USAGE3, standard_args): Add -mm and --maximized.
2440
2441 * frame.c: Qmaximized is new.
2442 (x_set_frame_parameters): Do not handle fullscreen specially.
2443 Only set width and height if explicitly set.
2444 (x_set_fullscreen): Handle Qmaximized.
2445 (x_set_font, x_figure_window_size): Do not handle fullscreen specially.
2446 (syms_of_frame): Initialize Qmaximized.
2447
1ac9108a
SM
2448 * frame.h (fullscreen_type): Add FULLSCREEN_MAXIMIZED.
2449 Declare Qfullwidth, Qfullheight, Qfullboth, Qmaximized.
3f1c6666
JD
2450
2451 * xterm.c (handle_one_xevent): Remove call to x_check_fullscreen
31fd7c5c
JB
2452 for Expose event. Add call to x_check_fullscreen for MapNotify event.
2453 Remove all code w.r.t. fullscreen from ConfigureNotify event. Do not
3f1c6666
JD
2454 set gravity to NorthWestGravity when USE_GTK.
2455 (set_wm_state): New function.
31fd7c5c 2456 (do_ewmh_fullscreen): Use set_wm_state. Also handle FULLSCREEN_MAXIMIZED.
3f1c6666
JD
2457 (x_handle_net_wm_state): Handle FULLSCREEN_MAXIMIZED.
2458 (x_check_fullscreen): Simplify so we only handle EMWH type of fullscreen
31fd7c5c 2459 or the case when no window manager is running. That means remove calls
3f1c6666
JD
2460 to x_real_positions and x_fullscreen_adjust.
2461
2462 * gtkutil.c (flush_and_sync, x_wm_size_hint_off): Remove.
2463 (xg_frame_set_char_size): Remove calls to x_wm_size_hint_off and
2464 flush_and_sync.
2465 (xg_height_changed): New function.
2466 (xg_create_frame_widgets): Remove call to gtk_widget_set_size_request
1ac9108a
SM
2467 and gtk_window_set_policy. Set frame gravity after parsing the
2468 geometry string.
3f1c6666
JD
2469 (xg_update_frame_menubar, free_frame_menubar)
2470 (xg_tool_bar_detach_callback, xg_tool_bar_attach_callback)
2471 (update_frame_tool_bar, free_frame_tool_bar): Call xg_height_changed.
2472 Remove calls to xg_frame_set_char_size.
2473
fd503d99
KH
24742009-07-01 Kenichi Handa <handa@m17n.org>
2475
2476 * keyboard.c (decode_keyboard_code): New function.
2477 (tty_read_avail_input): Decode the input bytes if necessary.
2478
1ac9108a
SM
2479 * coding.c (setup_coding_system):
2480 Initialize coding->carryover_bytes to 0.
fd503d99
KH
2481 (Fset_keyboard_coding_system_internal): If CODING-SYSTEM is nil,
2482 use Qno_conversion.
2483
24ed93fb
YM
24842009-07-01 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
2485
2486 * Makefile.in (SOME_MACHINE_LISP): Add ../lisp/term/common-win.elc.
2487
99061dfc
CY
24882009-06-30 Chong Yidong <cyd@stupidchicken.com>
2489
1ac9108a 2490 * xftfont.c (xftfont_open): Avoid passing NULL argument to XftLockFace.
99061dfc 2491
ff90fbde
JR
24922009-06-30 Jason Rumney <jasonr@gnu.org>
2493
2494 * w32term.c (w32_initialize): Use GetModuleHandle for library that
2495 is already loaded.
2496 Set user model ID if supported (bug#1849).
2497
5f445726
JM
24982009-06-29 Jim Meyering <meyering@redhat.com>
2499
2500 Remove useless if-before-xfree test.
2501 * nsfont.m (nsfont_close): Remove useless test.
2502 * term.c (delete_tty): Likewise.
2503 * w32.c (system_process_attributes): Likewise.
2504 * w32font.c (w32font_close): Likewise.
2505 * xfaces.c (x_free_gc): Likewise.
2506 * xselect.c (buffer): Likewise.
2507
b9607587
AS
25082009-06-28 Andreas Schwab <schwab@linux-m68k.org>
2509
2510 * process.c (send_process): Keep decoded string in a local
2511 variable and protect it from GC. (Bug#3521)
2512
89ba96f4
EZ
25132009-06-28 Eli Zaretskii <eliz@gnu.org>
2514
2515 * term.c (create_tty_output) [MSDOS]: #ifdef away.
2516 (tty_free_frame_resources) [MSDOS]: Add a DOS-specific version.
2517
098a1589
CY
25182009-06-28 Chong Yidong <cyd@stupidchicken.com>
2519
485422be
CY
2520 * xdisp.c (start_display, handle_face_prop)
2521 (move_it_vertically_backward, cursor_row_fully_visible_p)
1ac9108a
SM
2522 (redisplay_window, try_window_id, produce_image_glyph):
2523 Delete some #ifdef-ed out code chunks that are now obsolete.
485422be 2524
098a1589
CY
2525 * xterm.c (x_update_window_begin, x_new_focus_frame)
2526 (x_scroll_bar_handle_click, handle_one_xevent)
2527 (handle_one_xevent, XTread_socket, x_focus_on_frame)
2528 (x_make_frame_visible, x_make_frame_invisible)
2529 (x_wm_set_icon_pixmap, x_initialize): Delete some #ifdef-ed out
2530 code chunks that are now obsolete.
2531
78c38319
MA
25322009-06-28 Michael Albinus <michael.albinus@gmx.de>
2533
2534 * dbusbind.c (XD_SYMBOL_TO_DBUS_TYPE): Convert macro into function
2535 xd_symbol_to_dbus_type. With Solaris 2.11, it was said to compile
2536 for hours, when optimzation is enabled.
2537 (xd_signature, xd_append_arg, xd_retrieve_arg, xd_initialize)
2538 (xd_read_message): Make them static.
2539
4189ed40
CY
25402009-06-27 Chuck Blake <cblake@pdos.csail.mit.edu> (tiny change)
2541
2542 * term.c (turn_on_face): Allow simultaneously bold and dim
2543 terminal faces (Bug#3530).
2544
cd9b5e16
CY
25452009-06-27 Chong Yidong <cyd@stupidchicken.com>
2546
4e23bedb
CY
2547 * frame.c (x_get_arg): Check if dpyinfo is non-NULL.
2548
cd9b5e16
CY
2549 * xdisp.c (mouse_face_from_buffer_pos): Fix detection of
2550 truncation glyphs (Bug#3686).
2551
07cc3c35
GM
25522009-06-27 Glenn Morris <rgm@gnu.org>
2553
2554 * m/pmax.h: Restore file, with only netbsd portions.
2555
31fd7c5c 25562009-06-26 David Reitter <david.reitter@gmail.com>
25c5550f 2557
cd9b5e16 2558 * nsterm.m (keydown): Avoid infinite loop.
25c5550f 2559
42d4a64f
KH
25602009-06-26 Peter Jolly <peter@jollys.org> (tiny change)
2561
2562 * ftfont.c (get_adstyle_property): Call font_intern_prop with 1 as
2563 the arg FORCE_SYMBOL.
2564
930fe55b 25652009-06-25 Kenichi Handa <handa@m17n.org>
a71ccf3a
KH
2566
2567 * fontset.c (fontset_find_font): When a usable rfont_def is found
2568 in a fallback font-group, make it the first element of the group.
2569
57ebc3fd
CY
25702009-06-24 Chong Yidong <cyd@stupidchicken.com>
2571
2572 * emacs-icon.h: Always define gnu_xpm_bits on GTK (bug#3671).
2573
f084f942
KH
25742009-06-24 Kenichi Handa <handa@m17n.org>
2575
2576 * fontset.c (fontset_get_font_group): Return 0 if no font-group is
2577 set for C.
2578 (fontset_font): Record the availability of a font for C both in
2579 the realized fontsets of the current one and the default one.
2580
2f686c87
DN
25812009-06-23 Dan Nicolaescu <dann@ics.uci.edu>
2582
2583 * sysdep.c (child_setup_tty): Remove SIGNALS_VIA_CHARACTERS
2584 conditional, it is always defined on AIX.
2585
666e158e
MB
25862009-06-23 Miles Bader <miles@gnu.org>
2587
2588 * window.c (Vrecenter_redisplay): New variable.
2589 (syms_of_window): Initialize it.
2590 (Qtty): New extern declaration.
2591 (Frecenter): Only do redisplay if Vrecenter_redisplay requests it.
2592
c6da7cd2
JM
25932009-06-23 Jim Meyering <meyering@redhat.com>
2594
1ac9108a
SM
2595 * src/ftfont.c (setup_otf_gstring, ftfont_shape_by_flt):
2596 Use xmalloc and xrealloc (not malloc and realloc), so subsequent heap
632c2030 2597 pointer dereferences are guaranteed to be valid.
c6da7cd2 2598
678dca3d
KH
25992009-06-23 Kenichi Handa <handa@m17n.org>
2600
74d75424
KH
2601 * emacs.c (main): Call init_font ().
2602
2603 * font.h (Vfont_log): Extern it.
2604 (FONT_ADD_LOG, FONT_DEFERRED_LOG): New macros.
2605
2606 * font.c (font_sort_entities, font_list_entities)
2607 (font_matching_entity, font_open_entity)
2608 (font_close_object): Change font_add_log to FONT_ADD_LOG.
2609 (Vfont_log): Delete static.
2610 (font_log_env_checked): Delete this variable.
2611 (font_add_log): Don't check font_log_env_checked.
2612 (font_deferred_log): Check Vfont_log.
2613 (init_font): New function.
2614
678dca3d
KH
2615 * ftfont.c: Change font_add_log to FONT_ADD_LOG.
2616
2617 * w32font.c: Change font_add_log to FONT_ADD_LOG.
2618
2619 * w32uniscribe.c: Change font_add_log to FONT_ADD_LOG.
2620
2621 * xfont.c: Change font_add_log to FONT_ADD_LOG.
2622
2623 * fontset.c (fontset_font): Call FONT_DEFERRED_LOG.
2624 (face_for_char): Don't call font_deferred_log here.
2625 (font_for_char): Likewise.
2626
8a668709
CY
26272009-06-22 Chong Yidong <cyd@stupidchicken.com>
2628
9a01ee33
CY
2629 * w32term.c (x_draw_glyph_string): Use the glyph string's width
2630 rather than its background_width for drawing the overline and
2631 underline (Bug#489).
2632
2633 * xterm.c (x_draw_glyph_string): Use the glyph string's width
2634 rather than its background_width for drawing the overline and
2635 underline (Bug#489).
ec7c9926
CY
2636 (xg_default_icon_file): New variable.
2637 (syms_of_xterm): Initialize it to the Emacs SVG icon file.
2638 (x_bitmap_icon): Under GTK, use xg_default_icon_file.
9a01ee33 2639
8a668709
CY
2640 * xdisp.c (Qbefore_string, Qafter_string): Add externs.
2641 (load_overlay_strings): Remove externs.
2642 (fast_find_position): Function deleted.
2643 (mouse_face_from_buffer_pos): New function, based on
2644 fast_find_position. Correctly handle before-strings,
2645 display-strings, and after-strings (Bug#1220).
2646 (note_mouse_highlight): Use mouse_face_from_buffer_pos.
2647
4d4c02d8
CY
26482009-06-21 Chong Yidong <cyd@stupidchicken.com>
2649
1ac9108a 2650 * xdisp.c (IT_DISPLAYING_WHITESPACE): Define for !HAVE_WINDOW_SYSTEM.
4d4c02d8
CY
2651 (move_it_in_display_line_to, move_it_in_display_line_to)
2652 (display_line): Remove #ifdef HAVE_WINDOW_SYSTEM.
2653
70243478
CY
26542009-06-21 Chong Yidong <cyd@stupidchicken.com>
2655
2656 * Branch for 23.1.
2657
13087e59
JR
26582009-06-21 Jason Rumney <jasonr@gnu.org>
2659
2660 * w32term.c (keyboard_codepage): New static variable.
2661 (w32_read_socket) [WM_INPUTLANGCHANGE]: Update it.
2662 (w32_read_socket) [WM_CHAR]: Use it to decode character
2663 input (bug#3237).
2664 (w32_initialize): Initialize it.
2665 (codepage_for_locale): New function.
2666
4735b74e
KR
26672009-06-20 Ken Raeburn <raeburn@raeburn.org>
2668
2669 * process.c (status_message): Pass Faset index argument as a lisp
2670 object, so as to work with USE_LISP_UNION_TYPE.
2671
0e727afa
YM
26722009-06-19 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
2673
2674 * coding.c (Ffind_coding_systems_region_internal):
2675 Cache checked characters.
2676
cf299835
KH
26772009-06-18 Kenichi Handa <handa@m17n.org>
2678
1ac9108a 2679 * coding.c (decode_coding_iso_2022): Check MSB of bytes more rigidly.
cf299835 2680
90f20d94
AS
26812009-06-18 Andreas Schwab <aschwab@redhat.com>
2682
2683 * xdisp.c (redisplay_internal): Check that the frame is still
2684 live after redisplay of its windows.
2685 (redisplay_windows): Check that the window is still live.
2686
7f1faf1c
KH
26872009-06-17 Andreas Schwab <schwab@linux-m68k.org>
2688
2689 * coding.c (detect_coding_utf_16): Fix previous change.
2690
cc13543e
KH
26912009-06-16 Kenichi Handa <handa@m17n.org>
2692
2693 * coding.c (detect_coding_utf_16): Fix the logic of rejecting
2694 UTF-16 by checking the dispersion of Eth and Oth bytes.
2695
977b85f4
AS
26962009-06-15 Andreas Schwab <schwab@linux-m68k.org>
2697
2698 * coding.c (detect_coding_utf_16): Fix typo counting odd bytes.
2699
66bd43d1
KH
27002009-06-15 Kenichi Handa <handa@m17n.org>
2701
2702 * process.c (status_message): Fix previous change. Be sure to
2703 decode a localized string.
2704
cb5ca9c5
YM
27052009-06-15 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
2706
2707 * xterm.c (x_delete_terminal): Put previous change in #if 0 and
2708 add comment explaining why.
2709
ec7709ba 27102009-06-14 Sidney Markowitz <sidney@sidney.com>
5ee6f629 2711
ec7709ba 2712 * nsmenu.m (EmacsTooltip: setText): Set height of tooltip.
5ee6f629 2713
4b7f335c
AR
27142009-06-14 Adrian Robert <Adrian.B.Robert@gmail.com>
2715
2716 * nsfont.m (ns_attribute_value): Remove.
2717 (ns_attribute_fvalue): Incorporate code from ns_attribute_value.
2718 (ns_has_attribute): Shrink the normal range.
2719 (ns_findfonts): Don't worry about requested spec in determining
2720 need for synthItal.
e41820ee 2721 (ns_get_covering_families): Retain scriptToFamilies.
4b7f335c 2722
73b26103
SZ
27232009-06-14 Seiji Zenitani <zenitani@mac.com>
2724
2725 * xdisp.c [USE_MAC_TOOLBAR]: Remove obsolete definition for Mac Carbon.
2726
5753e4da
KH
27272009-06-11 Kenichi Handa <handa@m17n.org>
2728
2729 * xdisp.c (x_get_glyph_overhangs): Fix calculation of right
2730 overhang for the static composition case.
2731
3561b671
KH
27322009-06-11 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
2733
5753e4da
KH
2734 * xdisp.c (x_get_glyph_overhangs): Fix calculation of right
2735 overhang for the automatic composition case.
2736
3561b671
KH
2737 * xterm.c (x_compute_glyph_string_overhangs): Handle the automatic
2738 composition case.
2739
852bbd41
CY
27402009-06-10 Chong Yidong <cyd@stupidchicken.com>
2741
2742 * xdisp.c (get_next_display_element): When handling wrap-prefix
2743 and line-prefix, treat \n as a control character (bug#3502).
2744
9903d1e6
KH
27452009-06-10 Kenichi Handa <handa@m17n.org>
2746
2747 * font.c (font_parse_family_registry): Fix for one-char foundry.
2748 (font_sort_entities): Initialize prefer_prop[FONT_AVGWIDTH_INDEX].
2749
0bcbaaaa
CY
27502009-06-09 Dmitry Dzhus <dima@sphinx.net.ru> (tiny change)
2751
2752 * process.c (status_message): Fix handling of multibyte signal
2753 string (Bug#3499).
2754
40aa3f13
JM
27552009-06-09 Jim Meyering <meyering@redhat.com>
2756
1f80c7e2
CY
2757 * xfaces.c (Fx_load_color_file): Avoid array bounds error if the
2758 color name is missing.
40aa3f13 2759
72d51285
KH
27602009-06-09 Kenichi Handa <handa@m17n.org>
2761
2762 * charset.c (Fmap_charset_chars): In docstring, state clearly that
2763 FROM-CODE and TO-CODE are codepoints of CHARSET.
2764
c1d04d84
AR
27652009-06-08 Adrian Robert <Adrian.B.Robert@gmail.com>
2766
2767 * nsterm.m (ns_use_system_highlight_color): Drop, unused.
2768
27692009-06-08 Adrian Robert <Adrian.B.Robert@gmail.com>
2770
2771 Changes to support :script/:lang/:otf in NS font driver.
2772 * nsfont.m (nsfont_escape_name, nsfont_unescape_name)
2773 (nsfont_get_family, nsfont_char_width): Rename to ns_ prefix to
2774 indicate not part of font driver interface, and change callers.
2775 (ns_get_family): Remove pointless null check.
2776 (nsfont_spec_to_traits, nsfont_fmember_to_entity): Replace with
2777 ns_spec_to_descriptor, ns_descriptor_to_entity.
2778 (nsfont_trait_distance, nsfont_make_fontset_for_font): Remove.
2779 (ns_attribute_value, ns_attribute_fvalue, ns_has_attribute)
2780 (ns_spec_to_descriptor, ns_descriptor_to_entity)
2781 (ns_charset_covers, ns_lang_to_script, ns_otf_to_script)
2782 (ns_get_req_script, ns_accumulate_script_ranges)
2783 (ns_script_to_charset, ns_get_covering_families, ns_findfonts):
2784 New functions.
2785 (nsfont_list, nsfont_match): Use ns_findfonts.
2786 (nsfont_open): Use font descriptor instead of traits.
2787 (nsfont_draw): Handle "automatic" (lookup-table) compositions.
2788 (dump_glyphstring): Rename to ns_dump_glyphstring.
2789
c7eb9816
AR
2790 * nsterm.h (dump_glyphstring): Rename to ns_dump_glyphstring.
2791
c1d04d84
AR
2792 * nsfns.m (Fns_popup_font_panel): Use shared font manager.
2793
2794 * fontset.c (fontset_from_font): Remove NS-specific code.
2795
ec7709ba 27962009-06-08 Peter Jones <pjones@pmade.com> (tiny change)
c1d04d84
AR
2797
2798 * nsterm.m (ns_draw_window_cursor): Respect cursor_type for
2799 nonactive windows.
2800
31fd7c5c 28012009-06-08 Felix Mueller <felix@enqueue.eu> (tiny change)
c1d04d84 2802
1ac9108a 2803 * nsterm.m (ns_init_paths): Append path separator to INFOPATH variable.
c1d04d84 2804
68852c13 28052009-06-08 Wolfgang Lux <wolfgang.lux@gmail.com> (tiny change)
e7777236
AR
2806
2807 * keyboard.c (kbd_buffer_get_event): Null-check used_mouse_menu.
2808
6756cd1d
CY
28092009-06-07 Chong Yidong <cyd@stupidchicken.com>
2810
2811 * xdisp.c (move_it_in_display_line_to): On text-only terminals,
2812 account for the overflowing of newlines into the last glyph on the
2813 display line (Bug#3482).
2814
28bf482a
DR
28152009-06-05 David Reitter <david.reitter@gmail.com>
2816
ec7709ba
JB
2817 * nsselect.m (Fx_own_selection_internal, Fx_selection_exists_p)
2818 (Fx_selection_owner_p): Rename from Fns_own_selection_internal,
28bf482a
DR
2819 Fns_selection_exists_p, Fns_selection_owner_p.
2820
fdb55376
JR
28212009-06-03 Jason Rumney <jasonr@gnu.org>
2822
2823 * w32fns.c (x_create_tip_frame): Use the uniscribe font backend if
2824 available. (Bug#3379)
2825
05129fbe
KH
28262009-05-29 Kenichi Handa <handa@m17n.org>
2827
1ac9108a
SM
2828 * coding.c (get_translation_table):
2829 Check Venable_character_translation.
05129fbe 2830
ec7709ba 28312009-05-26 David Reitter <david.reitter@gmail.com>
15891144 2832
ec7709ba
JB
2833 * nsterm.m (ns_raise_frame): Only raise frame if visible.
2834 (x_make_frame_visible): Move frame to front rather than calling
15891144 2835 ns_raise_frame().
ec7709ba 2836 (keyDown:): Do not swallow events that aren't re-sent if frame
15891144 2837 isn't key window.
ec7709ba 2838 (drawRect:): Do not set visibility/iconified flags because
15891144
DR
2839 drawRect may be called by NSView even if the frame is hidden.
2840
ec7709ba
JB
2841 * nsfns.m (Fx_create_frame): Follow other ports in
2842 determining visibility; default to t. Ensure async_visible is set.
15891144 2843
21f73755
EZ
28442009-05-23 Eli Zaretskii <eliz@gnu.org>
2845
2846 * dired.c (Ffile_attributes): Doc fix.
2847
34001e41
CY
28482009-05-22 Chong Yidong <cyd@stupidchicken.com>
2849
2850 * m/mips.h [GNU_LINUX]: Don't define DATA_START (Bug#2685).
2851
46306a17
SM
28522009-05-21 Stefan Monnier <monnier@iro.umontreal.ca>
2853
2854 * xfont.c (xfont_list_pattern): Don't initialize xfont_scripts_cache
2855 and xfont_scratch_props.
2856 (syms_of_xfont): Do it here instead.
2857 (xfont_find_ccl_program): Delete, unused.
2858 (xfont_open): Delete unused var `i'.
2859
ef6e0694
KH
28602009-05-21 Kenichi Handa <handa@m17n.org>
2861
2862 * fontset.c (Qlatin): Don't make it static.
2863
46306a17
SM
2864 * xfont.c (xfont_chars_supported, xfont_supported_scripts):
2865 New functions.
ef6e0694
KH
2866 (xfont_scripts_cache, xfont_scratch_props): New variables.
2867 (Qlatin, Vscalable_fonts_allowed): Extern it.
46306a17
SM
2868 (xfont_list_pattern): Argument changed. Callers changed.
2869 Check Vscalable_fonts_allowed. Check the support of a script.
ef6e0694
KH
2870 (xfont_list): Don't reject a font spec with :script property.
2871 (xfont_has_char): Fix setting of encoding.
2872 (syms_of_xfont): Staticpro and initialize xfont_scripts_cache and
2873 xfont_scratch_props.
2874
28752009-05-19 Kenichi Handa <handa@m17n.org>
2876
46306a17 2877 * font.c (font_sort_entities): Rename from font_sort_entites.
ef6e0694
KH
2878 Callers changed.
2879
28802009-05-18 Kenichi Handa <handa@m17n.org>
2881
2882 * font.c (font_find_for_lface): Copy SPEC's FONT_TYPE too.
2883
ac71ced7
SM
28842009-05-19 Stefan Monnier <monnier@iro.umontreal.ca>
2885
2886 * frame.c (do_switch_frame) [NS_IMPL_COCOA]: Don't raise any window.
2887 (delete_frame) [NS_IMPL_COCOA]: Instead, do it here.
2888
1c6d1051
YM
28892009-05-19 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
2890
2891 * xterm.c (x_delete_display): Don't call XrmDestroyDatabase here.
2892 (x_delete_terminal): Dissociate resource database from display and
2893 then call XrmDestroyDatabase before closing display.
2894
9b9b779c
AR
28952009-05-18 Adrian Robert <Adrian.B.Robert@gmail.com>
2896
2897 * nsterm.m (ns_read_socket): Remove unused variable.
1564e649
AR
2898 * frame.c (do_switch_frame): Under NS_IMPL_COCOA section, check
2899 whether selected frame is viable before raising it (based on patch
2900 by David Reitter), and improve commentary.
2901 * nsfont.m (nsfont_make_fontset_for_font): Avoid a compiler warning.
9b9b779c 2902
cccd42d5
KH
29032009-05-15 Kenichi Handa <handa@m17n.org>
2904
2905 * font.c (Ffont_spec): Check arguments.
2906
337fbd17
CY
29072009-05-14 Chong Yidong <cyd@stupidchicken.com>
2908
2909 * xfaces.c (tty_supports_face_attributes_p): Recognize unspecified
2910 weight when testing attributes (Bug#3282).
2911
47a6002f
JD
29122009-05-11 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
2913
2914 * gtkutil.c (xg_frame_set_char_size): Set frame pixel width/height to
2915 what we expect to get in the next ConfigureNotify event.
2916
9cb363db
YM
2917 * xftfont.c (xftfont_open): Make sure that Xrender extension is added
2918 before Xft one (Bug#1696).
2919
b9126609
CY
29202009-05-07 David Reitter <david.reitter@gmail.com>
2921
2922 * nsfns.m (Fx_display_planes): Compute bitplanes using
2923 NSBitsPerPixelFromDepth (Bug#3207).
2924
27a69fd9
CY
29252009-05-10 Chong Yidong <cyd@stupidchicken.com>
2926
2927 * editfns.c (Ftranspose_regions): Doc fix (Bug#3248).
2928
00f37552
TTN
29292009-05-10 Ulrich Mueller <ulm@gentoo.org>
2930
2931 * s/gnu-linux.h: Make GCPROs and UNGCPRO no-ops also on SuperH.
2932
2d82a920
DR
29332009-05-07 David Reitter <david.reitter@gmail.com>
2934
ec7709ba
JB
2935 * nsterm.m (ns_dumpglyphs_stretch, ns_dumpglyphs_image):
2936 Respect mouse face background.
2d82a920 2937
46b0d52d
DR
29382009-05-07 David Reitter <david.reitter@gmail.com>
2939
ec7709ba
JB
2940 * nsterm.m (note_mouse_movement, ns_frame_up_to_date):
2941 Mouse movement/highlight: bracket drawing operations
46b0d52d
DR
2942 in ns_update_begin and ns_update_end.
2943
ce1b23bb
SM
29442009-05-06 Stefan Monnier <monnier@iro.umontreal.ca>
2945
5996e1b7
SM
2946 * nsfns.m (ns_get_screen): Rewrite.
2947 Don't presume selected-frame is of type `ns'.
2948
ba98e3a0
SM
2949 * font.c (font_update_drivers): Sanity fallback to avoid disabling
2950 all drivers.
2951
ce1b23bb
SM
2952 * nsterm.m (-windowDidResize:): Avoid inf-loop under GNUStep.
2953
bcda200f
YM
29542009-05-06 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
2955
2956 * keyboard.h (add_user_signal): Fix typo in extern.
2957
2958 * lisp.h (add_user_signal): Remove extern.
2959
2960 * unexelf.c (unexec): Consider a section to precede the .bss section
2961 if its addresses overlap that of .bss.
2962 (unexec) [NS_IMPL_GNUSTEP]: Copy ObjC-related data from old file
2963 instead of dumping process.
2964
864660a2
SM
29652009-05-06 Stefan Monnier <monnier@iro.umontreal.ca>
2966
2967 * keyboard.c (syms_of_keyboard): Staticpro pending_funcalls.
2968
50da4e56
SM
29692009-05-04 Stefan Monnier <monnier@iro.umontreal.ca>
2970
2971 * Makefile.in (ctagsfiles1, ctagsfiles2): Include ObjC files in TAGS.
2972
51520a1a
DN
29732009-05-02 Dan Nicolaescu <dann@ics.uci.edu>
2974
2975 * xterm.c (x_handle_net_wm_state): Move declaration of lval before
2976 any statements.
2977
409ea3a1
AS
29782009-05-02 Andreas Schwab <schwab@linux-m68k.org>
2979
59c4c60f
AS
2980 * process.c (read_process_output): Make sure the current buffer is
2981 always restored.
2982
409ea3a1
AS
2983 * coding.c (record_conversion_result): Don't modify
2984 Vlast_code_conversion_error for successful result.
2985 (alloc_destination): Don't clobber conversion result. (Bug#1650)
2986
56f00ed2
KH
29872009-05-01 Emanuele Giaquinta <emanuele.giaquinta@gmail.com> (tiny change)
2988
2989 * charset.c (load_charset): Reformat X==Y==Z to (X==Y)==Z.
896b1cc9 2990 (load_charset_map): Remove unnecessary code.
56f00ed2 2991
4491c9d2
DR
29922009-04-30 David Reitter <david.reitter@gmail.com>
2993
35f5b128 2994 * nsterm.m (convert_ns_to_X_keysym): Define function keys f16
4491c9d2
DR
2995 through f24.
2996
6970f632
CY
29972009-04-30 Chong Yidong <cyd@stupidchicken.com>
2998
2999 * xfaces.c (face_at_buffer_position): New arg base_face_id.
3000
3001 * xdisp.c (handle_face_prop): Pass base_face_id of iterator to
3002 face_at_buffer_position.
3003 (face_before_or_after_it_pos, get_next_display_element)
3004 (note_mouse_highlight): Update face_at_buffer_position call.
3005
3006 * term.c (term_mouse_highlight):
3007 * msdos.c (IT_note_mouse_highlight):
3008 * fontset.c (Finternal_char_font):
35f5b128 3009 * font.c (font_at, font_range): Update face_at_buffer_position call.
6970f632
CY
3010
3011 * dispextern.h (face_at_buffer_position): Update prototype.
3012
0c616f63
KH
30132009-04-30 Kenichi Handa <handa@m17n.org>
3014
35f5b128 3015 * fontset.c (fontset_find_font): Check if rfont_def is Qnil or not.
0c616f63 3016
ad3aaf33
AS
30172009-04-29 Andreas Schwab <schwab@linux-m68k.org>
3018
3019 * callproc.c (Fcall_process): Fix GC protection. Make sure
3020 current buffer is always restored.
3021
c3c963a0
YM
30222009-04-29 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
3023
3024 * atimer.c (init_atimer): Also clear stopped_atimers.
3025
3026 * keyboard.c (init_keyboard) [POLL_FOR_INPUT]: Reset poll_timer.
3027
7e3386cb
YM
3028 * process.c (create_process): Clean up merger residues of
3029 2008-07-17 change.
3030
91f68422
CY
30312009-04-29 Ulrich Mueller <ulm@gentoo.org>
3032
3033 * lread.c (Vread_circle): New variable.
3034 (read1): Disable recursive read if Vread_circle is nil.
3035
24b34550
KH
30362009-04-29 Kenichi Handa <handa@m17n.org>
3037
3038 * fontset.h (set_default_ascii_font): Delete extern.
3039
3040 * fontset.c (set_default_ascii_font): Delete this unused function.
3041
3042 * frame.c (x_set_font): When ARG is a font-object, check if the
3043 font-object matches with the ASCII font-spec of the frame's
9c358bda 3044 fontset. If not, create a new fontset for the frame. (Bug #3075)
24b34550 3045
77bf07e1
AS
30462009-04-28 Andreas Schwab <schwab@linux-m68k.org>
3047
3048 * fns.c (Flocale_info): Protect vector from GC during decoding.
3049
3050 * process.c (Fstart_process): Protect argv strings from GC during
3051 encoding.
3052
2c55aacf
AS
30532009-04-27 Andreas Schwab <schwab@linux-m68k.org>
3054
3055 * sysdep.c: Include <ctype.h>.
3056
b892d3c9
DR
30572009-04-27 David Reitter <david.reitter@gmail.com>
3058
35f5b128 3059 * nsfont.m (nsfont_open): Remove unused variable shrink.
b892d3c9
DR
3060 Remove commented-out code.
3061
9d0644c4
JB
30622009-04-26 Johan Bockgård <bojohan@gnu.org>
3063
3064 * keyboard.c (syms_of_keyboard) <input-decode-map>: Doc fix.
3065
b7053016
JR
30662009-04-25 Jason Rumney <jasonr@gnu.org>
3067
3068 * w32font.c (clear_cached_metrics): Remove, unused since 2008-08-02.
3069
4e8231f3
YM
30702009-04-25 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
3071
3072 * fringe.c (init_fringe_bitmap) [HAVE_X_WINDOWS && WORDS_BIG_ENDIAN]:
3073 Swap bytes in short integer if fringe bitmap width > 8.
3074
493dcf2c
KH
30752009-04-23 Kenichi Handa <handa@m17n.org>
3076
3077 * xfaces.c (Fx_list_fonts): If a font size is specified in
3078 PATTERN, set it in returned scalable fonts.
3079
401e9e57
CY
30802009-04-22 Chong Yidong <cyd@stupidchicken.com>
3081
708e05dc
CY
3082 * keyboard.c (Fset_input_meta_mode): Doc fix.
3083
3084 * dispnew.c (Fsend_string_to_terminal): Doc fix.
3085
1ac9108a 3086 * data.c (Fterminal_local_value, Fset_terminal_local_value): Doc fixes.
708e05dc
CY
3087
3088 * coding.c (Fterminal_coding_system): Doc fix.
3089
3090 * xfns.c (Fx_display_grayscale_p, Fx_display_pixel_width)
3091 (Fx_display_pixel_height, Fx_display_planes)
3092 (Fx_display_color_cells, Fx_server_max_request_size)
3093 (Fx_server_vendor, Fx_server_version, Fx_display_screens)
3094 (Fx_display_mm_height, Fx_display_mm_width)
3095 (Fx_display_backing_store, Fx_display_visual_class)
1ac9108a
SM
3096 (Fx_display_save_under, Fx_close_connection, Fx_synchronize):
3097 Doc fixes, replacing "terminal id" with "terminal object".
708e05dc
CY
3098 (check_x_display_info): Handle terminal objects instead of
3099 terminal ids.
3100
401e9e57
CY
3101 * term.c (Ftty_display_color_p, Ftty_display_color_cells)
3102 (Ftty_type, Fcontrolling_tty_p, Ftty_no_underline, Fsuspend_tty)
1ac9108a
SM
3103 (Fresume_tty, Vsuspend_tty_functions, Vresume_tty_functions):
3104 Doc fixes, replacing "terminal id" with "terminal object".
401e9e57 3105
df80c7f0
KH
31062009-04-21 Kenichi Handa <handa@m17n.org>
3107
5a8f12af 3108 * font.c (font_load_for_lface): Cancel previous change (bug#2994).
c0a6070d 3109 (font_score): Check AVGWIDTH too.
908567ef 3110
df80c7f0
KH
3111 * coding.c (decode_coding_utf_16): Reduce charbuf_end for the
3112 worst case.
1ac9108a
SM
3113 (decode_coding_sjis, decode_coding_big5, decode_coding_charset)
3114 (decode_coding_emacs_mule, decode_coding_iso_2022): Likewise.
df80c7f0 3115
705af33f
JR
31162009-04-19 Jason Rumney <jasonr@gnu.org>
3117
3118 The following changes fix Bug#3005 for wide glyphs on each platform,
b71ac3dd 3119 without reintroducing Bug#1258 for stretch glyphs.
705af33f
JR
3120
3121 * xterm.c (x_draw_bar_cursor): Limit cursor width differently for
3122 BAR_CURSOR and HBAR_CURSOR. Calculate width of HBAR_CURSOR using
3123 get_phys_cursor_geometry.
3124
b71ac3dd 3125 * w32term.c (x_draw_bar_cursor): Limit cursor width differently
705af33f
JR
3126 for BAR_CURSOR and HBAR_CURSOR. Calculate width of HBAR_CURSOR
3127 using get_phys_cursor_geometry.
3128
3129 * nsterm.m (ns_draw_window_cursor): HBAR_CURSOR width already
3130 correctly calculated.
3131
dc2933eb
JD
31322009-04-19 Jan Djärv <jan.h.d@swipnet.se>
3133
1ac9108a
SM
3134 * gtkutil.c (xg_tool_bar_menu_proxy, update_frame_tool_bar):
3135 Use G_CALLBACK instead of GTK_SIGNAL_FUNC which is deprecated.
dc2933eb
JD
3136 (xg_initialize): Use g_type_class_ref instead of gtk_type_class which
3137 is deprecated.
3138
973e7849
AS
31392009-04-18 Andreas Schwab <schwab@linux-m68k.org>
3140
3141 * font.c (font_put_frame_data): Use xfree instead of free.
3142
314d66f4
JB
31432009-04-17 Juanma Barranquero <lekktu@gmail.com>
3144
3145 * w32font.c (Qja, Qko): Remove declarations.
3146 (syms_of_w32font): Don't DEFSYM them.
3147
cf702558
CY
31482009-04-17 Chong Yidong <cyd@stupidchicken.com>
3149
3150 * font.c (Qja, Qko): Move definitions here from ftfont.c.
3151
3152 * font.h (Qja, Qko): Extern them.
3153
3154 * ftfont.c (Qja, Qko): Remove declarations.
3155
3156 * xfont.c (Qja, Qko): Remove declarations.
3157
b50504f5
KH
31582009-04-17 Kenichi Handa <handa@m17n.org>
3159
bde25748
KH
3160 * editfns.c (Ftranslate_region_internal): Use Fconcat to make a
3161 string from a vector to handle Latin-1 characters correctly.
3162
b50504f5
KH
3163 * ftfont.c (ftfont_pattern_entity): Return a newly allocated
3164 entity even if the cache hits.
3165
f4646fff
AS
31662009-04-16 Andreas Schwab <schwab@linux-m68k.org>
3167
3168 * search.c (boyer_moore): Use zero as marker value for a possible
6340c70e 3169 match instead of depending on overflow behavior. (Bug#2844)
f4646fff 3170
e7deaab0
AS
3171 * search.c: Use EMACS_INT for buffer positions. Add prototypes.
3172 * lisp.h: Adjust prototypes.
3173
0a0e7d49
CY
31742009-04-16 Chong Yidong <cyd@stupidchicken.com>
3175
3176 * keyboard.c (adjust_point_for_property): Disable 2009-02-12
3177 change (Bug#3003).
3178
3c908a57
KH
31792009-04-16 Kenichi Handa <handa@m17n.org>
3180
1ac9108a 3181 * xfont.c (xfont_has_char): Special handling of `ja' and `ko' adstyle.
bd0af90d
KH
3182
3183 * xftfont.c (xftfont_has_char): Special handling of `ja' and `ko'
3184 adstyle.
3185
3186 * ftfont.c (Qja, Qko): Don't make them static.
3187 (enum ftfont_cache_for): New enum.
3188 (fc_charset_table): Undo the previous change.
3189 (ftfont_get_latin1_charset): Delete it.
1ac9108a
SM
3190 (ftfont_pattern_entity): Check cache by ftfont_lookup_cache.
3191 Set FONT_SIZE_INDEX of the entity to 0 for a scalable font. For a
bd0af90d
KH
3192 non-scarable font, try to get AVERAGE_WIDTH.
3193 (ftfont_lookup_cache): Argument FOR-FACE is changed to CACHE_FOR.
3194 Change ft_face_cache from a list of a hash-table. Don't check
3195 `ja' and `ko' adstyle here.
3196 (ftfont_get_fc_charset): Call ftfont_lookup_cache with
3197 FTFONT_CACHE_FOR_CHARET.
3198 (ftfont_get_charset): Undo the previous change.
1ac9108a 3199 (ftfont_open): Call ftfont_lookup_cache with FTFONT_CACHE_FOR_FACE.
bd0af90d
KH
3200 (ftfont_close): Likewise.
3201 (ftfont_has_char): Special handling of `ja' and `ko' adstyle.
3202
3203 * font.c (font_sort_entites): Change the meaning of the arg
3204 BEST-ONLY. Don't optimize for VEC of lenght 1.
3205 (font_select_entity): Just return the value of font_sort_entites.
3206
3207 * xfaces.c (merge_face_vectors): Reflect font properties in
3208 to[LFACE_FONT_INDEX] to the other face attributes. Don't call
3209 font_clear_prop if a face attribute doesn't change.
3210
3c908a57
KH
3211 * charset.h (charset_ksc5601): Extern it.
3212
3213 * charset.c (charset_ksc5601): New variable.
3214 (Fdefine_charset_internal): Set charset_ksc5601.
3215 (init_charset_once): Initialize charset_ksc5601 to -1.
3216
d65859c3
DN
32172009-04-15 Dan Nicolaescu <dann@ics.uci.edu>
3218
3219 * fileio.c (history_delete_duplicates): Remove unused declaration.
3220
3221 * callint.c (history_delete_duplicates): New declaration.
3222 (Fcall_interactively): Remove command history duplicates when
3223 history_delete_duplicates is true.
3224
3ba010e5
EZ
32252009-04-14 Eli Zaretskii <eliz@gnu.org>
3226
3227 * buffer.c (syms_of_buffer) <line-spacing>: Doc fix.
3228
06f19b91
KH
32292009-04-14 Kenichi Handa <handa@m17n.org>
3230
3231 * font.c (Ffont_info): Fix docstring. Fix the second element of
3232 the returned value (bug#2949).
3233
2cce8bfc
CY
32342009-04-14 Chong Yidong <cyd@stupidchicken.com>
3235
3236 * xdisp.c (Vwrap_prefix, Vline_prefix): Reflow docstrings.
3237
d156542d
KH
32382009-04-14 Kenichi Handa <handa@m17n.org>
3239
3240 * xfont.c (xfont_has_char): The font has C if C is ASCII and the
3241 encoding charset is ascii_compatible.
3242
3243 * charset.c (Fdefine_charset_internal): Make charset
3244 ascii-compatible if the method is CHARSET_METHOD_OFFSET, the
3245 code_offset is 0, and covers all ASCII characters.
3246
86fa089e
SM
32472009-04-13 Stefan Monnier <monnier@iro.umontreal.ca>
3248
3249 * nsselect.m (symbol_to_nsstring, clean_local_selection_data)
3250 (ns_string_to_pasteboard_internal):
3251 * nsmenu.m (process_dialog):
3252 * nsimage.m (ns_load_image): Use SDATA and ASET where appropriate.
3253 * nsfont.m (nsfont_open): Use XHASH to make it compile with LISP_UNION.
3254 * lisp.h (Fx_load_color_file): Declare.
3255
a8a3728b
KH
32562009-04-13 Kenichi Handa <handa@m17n.org>
3257
1ac9108a 3258 * font.c (font_delete_unmatched): Preserve the order of list elements.
a8a3728b
KH
3259 (font_select_entity): Suppress the code to optimize for the same
3260 kind of fonts.
3261 (font_load_for_lface): Get a font that supports at least ASCII
3262 characters.
3263
3264 * ftfont.c (Qja, Qko): New variables.
3265 (fc_charset_table): Delete uniquifier data for iso8859-1.
3266 (ftfont_get_latin1_charset): New function.
3267 (get_adstyle_property): New function.
3268 (ftfont_pattern_entity): Set FONT_ADSTYLE_INDEX of entity for
3269 bitmap fonts.
3270 (ftfont_lookup_cache): Handle the case that KEY is a font-entity.
3271 Delete iso-8859-1 range from the charset of fonts whose adstyle is
3272 `ko' or `ja'.
3273 (ftfont_get_fc_charset): Call ftfont_lookup_cache with ENTITY.
1ac9108a 3274 (ftfont_get_charset): For iso8859-1, call ftfont_get_latin1_charset.
a8a3728b
KH
3275 (ftfont_list): Don't refuse a font spec with non-nil `adstyle'
3276 property.
3277 (ftfont_open): Call ftfont_lookup_cache with ENTITY.
3278 (syms_of_ftfont): DEFSYM Qja and Qko.
3279
483670b5
KH
32802009-04-09 Kenichi Handa <handa@m17n.org>
3281
12b55765
KH
3282 * charset.c (map_charset_chars): For a charset of `superset'
3283 method, fix calculation of code range.
3284
483670b5
KH
3285 * font.c (font_put_extra): If VAL is nil, delete the slot for PROP
3286 from the list of extra properties.
3287 (font_clear_prop): Be sure to delete `:name' font property.
3288
57d3b93b
KH
32892009-04-08 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
3290
b4b2c2ca
YM
3291 * dispnew.c (redraw_overlapping_rows): Fix detection of
3292 overlapping for topmost and bottommost rows.
3293
1ac9108a 3294 * ftfont.c (ftfont_text_extents): Fix calculation of metrics->descent.
57d3b93b 3295
472c3609
JR
32962009-04-06 Jason Rumney <jasonr@gnu.org>
3297
3298 * frame.c (x_set_font): Avoid C99 mid-block variable declaration.
3299
ab193662
KH
33002009-04-06 Kenichi Handa <handa@m17n.org>
3301
3302 * ftxfont.c (ftxfont_draw_backgrond): Fix args to XFillRectangle.
3303
3304 * xftfont.c (xftfont_open): Fix setting font->underline_thickness.
3305
0c26f026
KH
33062009-04-06 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
3307
3308 * ftfont.c (ftfont_open): Fix checking of the return value of
3309 FT_Load_Char. Fix setting font->underline_thickness.
3310
e173bbce
CY
33112009-04-04 Chong Yidong <cyd@stupidchicken.com>
3312
3313 * terminal.c (Fterminal_name, Fdelete_terminal, Fterminal_name)
3314 (Fterminal_parameters, Fterminal_parameter)
3315 (Fset_terminal_parameter): In doc string, refer to terminal
3316 objects rather than terminal ids.
3317
693a2698
EZ
33182009-04-04 Eli Zaretskii <eliz@gnu.org>
3319
3320 * dosfns.c (system_process_attributes) [SYSTEM_MALLOC]: Don't call
3321 ret_lim_data. (Bug#2867)
3322
d5221487
CY
33232009-04-03 Chong Yidong <cyd@stupidchicken.com>
3324
3325 * term.c (produce_stretch_glyph): Reduce width of stretch glyphs
3326 so they don't get wider than the window, matching 2006-01-23
3327 change to the partner function in xdisp.c (Bug#2800).
3328
223509a3
KH
33292009-04-03 Kenichi Handa <handa@m17n.org>
3330
3331 * print.c (print_object): Make each lowest sub_char_table start a
3332 new line (Bug#2866).
3333
74fcd0b1
KH
33342009-04-02 Kenichi Handa <handa@m17n.org>
3335
3336 * fontset.c (fontset_font): Record no-font when a fontset
3337 explicitly tells not to try another font-specs.
3338
c542407d
SM
33392009-03-30 Pierre Poissinger <pierre.poissinger@gmail.com> (tiny change)
3340
3341 * charset.c (map_charset_for_dump): Add missing UNGCPRO.
3342
e3869731
KH
33432009-03-30 Kenichi Handa <handa@m17n.org>
3344
d8d2f142
KH
3345 * fontset.c (fontset_from_font): Specify only registry in a
3346 font-spec for all characters supported by that registry.
3347
e3869731
KH
3348 * ftfont.c: Fix previous change. Define ftfont_variation_glyphs
3349 even if HAVE_M17N_FLT is not defined.
3350
5da5f805
CY
33512009-03-29 Sebastian Rose <sebastian_rose@gmx.de> (tiny change)
3352
3353 * ftfont.c: Conditionalize prototyping and use of
3354 ftfont_variation_glyphs.
3355
ab226c50
SM
33562009-03-28 Stefan Monnier <monnier@iro.umontreal.ca>
3357
9628fed7
SM
3358 * frame.c (delete_frame): Work around compiler bug.
3359
3360 * editfns.c (general_insert_function): Adjust to insdel.c changes.
3361 * insdel.c (prepare_to_modify_buffer, signal_before_change):
3362 Some more EMACS_INT.
3363 * lisp.h (copy_text, count_size_as_multibyte): Fix last change.
3364
3365 * xdisp.c (dump_glyph): Fix typo.
3366
ae19ba7c
SM
3367 * insdel.c (move_gap, move_gap_both, gap_left, gap_right)
3368 (adjust_markers_gap_motion, adjust_markers_for_delete)
3369 (adjust_markers_for_insert, adjust_point)
3370 (adjust_markers_for_replace, make_gap_larger, make_gap_smaller)
3371 (make_gap, copy_text, count_size_as_multibyte, insert)
3372 (insert_and_inherit, insert_before_markers)
3373 (insert_before_markers_and_inherit, insert_1)
3374 (count_combining_before, count_combining_after, insert_1_both)
3375 (insert_from_string, insert_from_string_before_markers)
3376 (insert_from_string_1, insert_from_gap, insert_from_buffer)
3377 (insert_from_buffer_1, adjust_after_replace)
3378 (adjust_after_replace_noundo, adjust_after_insert, replace_range)
3379 (replace_range_2, del_range, del_range_1, del_range_byte)
3380 (del_range_both, del_range_2, modify_region)
3381 (prepare_to_modify_buffer, signal_before_change)
3382 (signal_after_change, Fcombine_after_change_execute): Use EMACS_INT
3383 for buffer positions and sizes.
3384 * lisp.h: Adjust prototypes accordingly.
3385
3386 * fileio.c (adjust_markers_for_delete): Move declaration to lisp.h.
3387 (non_regular_inserted, non_regular_nbytes, read_non_regular)
3388 (Finsert_file_contents): Use EMACS_INT for buffer positions.
3389
ab226c50
SM
3390 * fileio.c (Finsert_file_contents): Don't limit size to INT_MAX/4.
3391
46dfb8fb
JD
33922009-03-27 Jan Djärv <jan.h.d@swipnet.se>
3393
3394 * frame.c (x_set_font): If the fullscreen property is non-nil, adjust
3395 lines and columns so we keep the same pixel height and width.
3396
3397 * xterm.c (handle_one_xevent): Call x_handle_net_wm_state if
3398 the property _NET_WM_STATE has changed.
46dfb8fb
JD
3399 (x_handle_net_wm_state): New function to update frame parameter
3400 fullscreen.
3401 (x_term_init): Initialize atoms for _NET_WM_STATE.
3402
3403 * xterm.h (struct x_display_info): Add atoms for _NET_WM_STATE.
3404
d347e494
SM
34052009-03-27 Kevin Ryde <user42@zip.com.au>
3406
3407 * keyboard.c (tty_read_avail_input): Don't treat a -1 return from
3408 Gpm_GetEvent as an error that justifies closing the filedescriptor.
3409 * term.c (close_gpm): Get the filedescriptor as a (new) parameter.
3410 (Fgpm_mouse_stop): Pass that new parameter.
3411 * termhooks.h (close_gpm): Adjust prototype.
3412
84db11d6
SM
34132009-03-26 Stefan Monnier <monnier@iro.umontreal.ca>
3414
c95a5008
SM
3415 * lisp.h (Fx_focus_frame): Declare.
3416
84db11d6
SM
3417 * callint.c (Fcall_interactively): For '^' just delegate the work to
3418 handle-shift-selection.
3419 (syms_of_callint): Move declaration of shift-select-mode to simple.el.
3420
0a1958d6
CY
34212009-03-24 Chong Yidong <cyd@stupidchicken.com>
3422
0bfdff23
CY
3423 * editfns.c (Ffloat_time): Doc fix (Bug#2768).
3424
0a1958d6
CY
3425 * data.c (Qinteractive_form): New variable.
3426 (Finteractive_form): Use it.
3427
3428 * eval.c (Fcommandp): Use Qinteractive_form.
3429
58aec0d6
JR
34302009-03-24 Jason Rumney <jasonr@gnu.org>
3431
3432 * fileio.c (Fsubstitute_in_file_name): Always work on a copy.
3433 Calculate total size precisely. Decode environment variables
3434 before substituting. (Bug#38)
3435
553dd618
KH
34362009-03-24 Kenichi Handa <handa@m17n.org>
3437
3438 * font.c (find_font_encoding): Return Qnil for unsupported
639239cf 3439 encoding (Bug#2722).
553dd618 3440
c39ea606
JD
34412009-03-23 Jan Djärv <jan.h.d@swipnet.se>
3442
3443 * gtkutil.c (xg_display_open): Assign a value to gdpy_def, check
3444 that gdpy is set.
3445
bc9b2b5e
AM
34462009-03-22 Alan Mackenzie <acm@muc.de>
3447
3448 * callint.c (Finteractive): Clarify the doc string - even
3449 promptless elements need \n separators.
3450
9f995a76
JR
34512009-03-22 Jason Rumney <jasonr@gnu.org>
3452
3453 * w32term.c (syms_of_w32term): Doc fix for
3454 x-use-underline-position-properties.
3455
22749e9a
EZ
34562009-03-21 Eli Zaretskii <eliz@gnu.org>
3457
3458 * w32.c (getpwuid): Change argument type to unsigned.
3459 (struct w32_id): Change type of `rid' member to unsigned.
3460 (w32_cached_id, w32_add_to_cache, get_name_and_id): Change type of
3461 argument ID to unsigned. All callers changed.
3462 (getuid, geteuid, getgid, getegid): Change return type to unsigned.
3463
e00553bf
EZ
34642009-03-20 Eli Zaretskii <eliz@gnu.org>
3465
3466 * editfns.c (Fuser_uid, Fuser_real_uid): If UID as EMACS_INT is
3467 negative, produce a float value.
3468
3469 * dired.c (make_uid, make_gid): New functions.
3470 (Ffile_attributes): Use them to avoid negative UID and GID.
3471
f761d6b6
JB
34722009-03-20 Juanma Barranquero <lekktu@gmail.com>
3473
3474 * keyboard.c (Fcurrent_idle_time): Reflow docstring.
3475 (syms_of_keyboard) <command-hook-internal, input-method-function>:
3476 Fix typos in docstrings.
3477
d507f8d7
KH
34782009-03-19 Kenichi Handa <handa@m17n.org>
3479
3480 * fontset.c (Fset_fontset_font): When a spec of ASCII font is
f761d6b6
JB
3481 changed, use font_load_for_lface to get a new font object.
3482 Call free_realized_fontset after handling ASCII font change.
d507f8d7
KH
3483
3484 * frame.c (x_set_font): Handle the case that ARG is a cons.
3485
c68845e0
GM
34862009-03-19 Glenn Morris <rgm@gnu.org>
3487
3488 * fileio.c (Fsubstitute_in_file_name): Doc fix.
3489
bfa49dd1
CY
34902009-03-19 Chong Yidong <cyd@stupidchicken.com>
3491
3492 * indent.c (Fvertical_motion): Undo 2005-01-19 change (Bug#2694).
3493
8458d4c1
KH
34942009-03-19 Kenichi Handa <handa@m17n.org>
3495
3496 * charset.c (load_charset_map_from_file): When a mapfile can't be
3497 loaded, signal an error.
3498
78e7d1fe
EZ
34992009-03-18 Eli Zaretskii <eliz@gnu.org>
3500
3501 * dired.c (Ffile_attributes): Make sure UID and GID are always
3502 positive, even if the value is too large for a positive EMACS_INT.
3503 Doc fix.
3504
3505 * editfns.c (Fuser_login_name): Support float arguments. Doc fix.
3506
5da9fdfa
YM
35072009-03-18 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
3508
3509 * xmenu.c (xdialog_show): Move Fredisplay call ...
3510 (Fx_popup_dialog): ... here.
3511
7519c40d
SM
35122009-03-18 Stefan Monnier <monnier@iro.umontreal.ca>
3513
3514 * dired.c (file_name_completion): Disable the first optimization just
3515 installed, since it is not implemented correctly.
3516
2cd298e2
SM
35172009-03-17 Stefan Monnier <monnier@iro.umontreal.ca>
3518
3519 * dired.c (file_name_completion): Check completion-ignored-extensions
c95a5008 3520 only if the entry can affect bestmatch.
2cd298e2
SM
3521 Stop the search early, as Ftry_completion already does.
3522
48d37adf
CY
35232009-03-17 Chong Yidong <cyd@stupidchicken.com>
3524
e10c9c93 3525 * minibuf.c (Vminibuffer_completion_confirm): Doc fix.
48d37adf 3526
9286b16a
CY
35272009-03-15 Chong Yidong <cyd@stupidchicken.com>
3528
3529 * keyboard.c (parse_menu_item): Don't display remappings as menu
3530 equivalent bindings (Bug#788).
3531
f7b146dc
JR
35322009-03-15 Jason Rumney <jasonr@gnu.org>
3533
3534 * w32term.h (WM_EMACS_PAINT): New message.
3535 * w32term.c (w32_read_socket): Use it instead of WM_PAINT.
3536 * w32fns.c (w32_wnd_proc): Change WM_PAINT to WM_EMACS_PAINT
3537 before passing to lisp thread. (Bug#950)
3538
f761d6b6 35392009-03-14 David Reitter <david.reitter@gmail.com>
c6c62e78 3540
d93f9575
CY
3541 * nsterm.m (ns_shutdown_properly, -terminate): Remove global state
3542 variable as it was never reset.
3543 (ns_term_init): Remove initialization of Lisp-settable defaults
3544 and ns_expand_space.
3545 (-setPanelFromDefaultValues): Remove ns_expand_space.
3546 (-showPreferencesWindow): Send new KEY_NS_SHOW_PREFS key.
3547 * nsfont.m (nsfont_open): Remove ns_expand_space, assume -0.5
c6c62e78
DR
3548 i.e. no additional spacing, similar to Carbon port.
3549
d93f9575
CY
3550 * nsterm.h: Define KEY_NS_SHOW_PREFS key.
3551 * nsfns.m (ns-popup-prefs-panel): Remove.
c6c62e78 3552
305018ec
JD
35532009-03-14 Jan Djärv <jan.h.d@swipnet.se>
3554
3555 * sound.c (alsa_configure): Remove call to deprecated
3556 snd_pcm_sw_params_set_xfer_align.
3557
f761d6b6 35582009-03-14 Stephen Berman <stephen.berman@gmx.net>
4a02423f
JD
3559
3560 * gtkutil.c (xg_tool_bar_callback): Set focus back to the frame
3561 after clicking in a detached tool bar.
3562 (xg_tool_bar_proxy_callback): Remove call to Fx_focus_frame.
3563
46e722a9
SM
35642009-03-13 Stefan Monnier <monnier@iro.umontreal.ca>
3565
348db3dd
SM
3566 * fontset.c (fontset_from_font, Ffontset_info): YAILOM (Yet another
3567 int/Lisp_Object mixup).
46e722a9 3568
a3d16f39
KH
35692009-03-13 Kenichi Handa <handa@m17n.org>
3570
3571 * fontset.c (Ffontset_info, check_fontset_name): New arg frame.
fe24f56a 3572 Handle NAME nil and t correctly. Callers changed.
a3d16f39
KH
3573 (font_def_arg, add_arg, from_arg, to_arg): Delete them.
3574 (set_fontset_font): Change ARG to a vector. Handle range_list in
3575 ARG correctly.
3576 (Fset_fontset_font): Fix the case that TARGET is both a script
fe24f56a 3577 name and charset name. Adjust the arg to set_fontset_font for
a3d16f39
KH
3578 the above change.
3579 (fontset_from_font): Fix previous change.
fe24f56a 3580 (Ffontset_info): Adjust for the 2008-07-09 change of fontset
a3d16f39
KH
3581 entry. If FONTSET is the default fontset, don't set the extra
3582 slot of the returning char-table.
3583
b066e6b6
JB
35842009-03-12 Juanma Barranquero <lekktu@gmail.com>
3585
3586 * nsfns.m (Fx_close_connection): Doc fix.
3587 (Fns_do_applescript): Reflow docstring.
3588 (Fns_hide_others, Fns_hide_emacs, Fns_convert_utf8_nfd_to_nfc)
3589 (Fx_display_pixel_width, Fx_display_pixel_height)
3590 (Fns_display_usable_bounds, Fx_display_planes, Fx_show_tip):
3591 Fix typos in docstrings.
3592 (Fns_set_alpha): Fix typos in error messages.
3593
d472514e 35942009-03-12 David Reitter <david.reitter@gmail.com>
d6220c13 3595
d472514e 3596 * termhooks.h [HAVE_NS]: Define NS_NONKEY_EVENT to be used for
d6220c13
DR
3597 non-key system events on NS. Formerly, NON_ASCII_KEYSTROKE_EVENT
3598 were used for such events.
3599
d472514e
JB
3600 * nsterm.m (newFrame, openFile, fulfillService, changeFont)
3601 (toggleToolbar, performDragOperation, runHelp): Use it.
d6220c13 3602
d472514e 3603 * keyboard.c (parse_menu_item) [HAVE_NS]: Treat new event like
d6220c13
DR
3604 NON_ASCII_KEYSTROKE_EVENT, but set used_mouse_menu.
3605
fb930676
KH
36062009-03-11 Kenichi Handa <handa@m17n.org>
3607
ff85581a
KH
3608 * font.h (font_open_by_spec): Extern it.
3609
c50b7e98
KH
3610 * font.c (font_open_by_spec): New function.
3611 (font_open_by_name): Use font_open_by_spec.
3612
fb930676
KH
3613 * frame.c (x_set_font): When ARG is a font-object, don't alter the
3614 fontset of the frame.
3615
3616 * fontset.c (Fset_fontset_font): When a font for ASCII is changed,
3617 modify the default font of frames that use this fontset.
3618 (num_auto_fontsets): New variable.
3619 (fontset_from_font): Use num_auto_fontsets to decide a fontset
3620 name. Be sure to set FONTSET_ASCII to the correct font name.
3621 (update_auto_fontset_alist): New function.
3622
df4e8455
JB
36232009-03-11 Juanma Barranquero <lekktu@gmail.com>
3624
3625 * makefile.w32-in: Update dependencies.
3626
0a375797
AR
36272009-03-06 Adrian Robert <Adrian.B.Robert@gmail.com>
3628
3629 * nsfns.m (syms_of_nsfns): Remove Qbuffered.
3630
61313fa3
SM
36312009-03-10 Stefan Monnier <monnier@iro.umontreal.ca>
3632
3633 * buffer.c (Fswitch_to_buffer): Revert part of 2008-10-21's change.
3634
b55103fb
CY
36352009-03-10 Chong Yidong <cyd@stupidchicken.com>
3636
3637 * lread.c (Feval_buffer): Doc fix.
3638
dde2559c
KH
36392009-03-09 Kenichi Handa <handa@m17n.org>
3640
3641 * charset.c (Qfile_name_handler_alist): Extern it.
3642 (load_charset_map_from_file): Temporarily bind
3643 `file-name-handler-alist' to nil while calling openp. (Bug#2435)
3644
df4e8455 36452009-03-06 Aaron Ecay <aaronecay@gmail.com> (tiny change)
340e08a4 3646
47f588bb
GM
3647 * nsterm.m (ns_draw_vertical_window_border): Draw 1 pixel wide,
3648 not two, and use NSRectFill instead of NSDrawGroove. (Bug#2352)
340e08a4 3649
4ddf94bd
AR
36502009-03-06 Adrian Robert <Adrian.B.Robert@gmail.com>
3651
4c9bdfc2
AR
3652 * nsterm.m: Include <signal.h> for SIGTERM used in ns_term_shutdown.
3653 (x_set_window_size): Change back to calculated method of setting
3654 toolbar height under Cocoa. (Bug#2546)
4ddf94bd
AR
3655 (EmacsView-windowWillUseStandardFrame:defaultFrame:): New method.
3656 (EmacsView-drawRect:): Completely shortcircuit if ns_in_resize.
3657
fe41ae9e
AR
3658 * nsfns.m (ns_appkit_version_int): Fix typo in the version macro.
3659
4c9bdfc2
AR
3660 * nsmenu.m (EmacsMenu-addItemWithWidgetValue:): Don't add
3661 accelerator in parens under GNUstep.
3662
825d0875
KH
36632009-03-06 Kenichi Handa <handa@m17n.org>
3664
3665 These changes are to detect incorrect composition sequence without
f3b3be74 3666 looking ahead the source. (Bug#2370)
825d0875
KH
3667
3668 * coding.h: Include "composite.h".
3669 (enum compisition_state): New enum.
3670 (struct compisition_status): New struct.
3671 (struct iso_2022_spec): New member cmp_status.
3672 (struct emacs_mule_spec): New struct.
3673 (struct coding_system): New members ctext_extended_segment_len and
3674 embedded_utf_8. Change the union member
3675 spec.emacs_mule_full_support to spec.emacs_mule.
3676
3677 * coding.c (CODING_ISO_CMP_STATUS): New macro.
3678 (CODING_ISO_EXTSEGMENT_LEN, CODING_ISO_EMBEDDED_UTF_8): New macros.
98a326f7 3679 (MAX_ANNOTATION_LENGTH): Define to 5.
825d0875
KH
3680 (ADD_COMPOSITION_DATA): New arg nbytes.
3681 (emacs_mule_char): New arg cmp_status.
3682 (DECODE_EMACS_MULE_COMPOSITION_CHAR): Delete it.
3683 (DECODE_EMACS_MULE_COMPOSITION_RULE_20): New arg c.
3684 (DECODE_EMACS_MULE_COMPOSITION_RULE_21): New arg c.
3685 (DECODE_EMACS_MULE_21_COMPOSITION): Delete the arg c.
3686 (DECODE_EMACS_MULE_20_RELATIVE_COMPOSITION): Likewise.
3687 (DECODE_EMACS_MULE_20_RULEBASE_COMPOSITION): Likewise.
3688 (DECODE_EMACS_MULE_COMPOSITION_START): New macro.
3689 (EMACS_MULE_COMPOSITION_END): New macro.
3690 (emacs_mule_finish_composition): New function.
3691 (EMACS_MULE_MAYBE_FINISH_COMPOSITION): New macro.
3692 (decode_coding_emacs_mule): Avoid long looking ahead while
3693 handling composition.
3694 (DECODE_COMPOSITION_RULE): Argument changed to rule and nbytes.
3695 (ENCODE_COMPOSITION_RULE): New macro.
3696 (finish_composition): New function.
3697 (MAYBE_FINISH_COMPOSITION): Call finish_composition.
3698 (DECODE_COMPOSITION_START): New implementation.
3699 (DECODE_COMPOSITION_END): Likewise.
3700 (STORE_COMPOSITION_RULE): New macro.
3701 (decode_coding_iso_2022): Avoid long looking ahead while handling
3702 composition, CTEXT extended segment, and embedded UTF-8.
3703 (setup_coding_system): For a coding of type iso-2022, reset
3704 CODING_ISO_EXTSEGMENT_LEN (coding) and
3705 CODING_ISO_EMBEDDED_UTF_8 (coding).
3706 (get_translation): Delete arguments last_block, from_nchars,
3707 to_nchars. Callers changed.
3708 (produce_chars): Don't modify charbuf. Adjusted for the change of
3709 get_translation.
98a326f7 3710 (produce_composition): Adjust for the new annotation sequence.
825d0875 3711 (handle_composition_annotation): Likewise.
98a326f7 3712 (consume_chars): Adjust for the change of get_translation.
825d0875 3713
ccbc4452
AR
37142009-03-05 Adrian Robert <Adrian.B.Robert@gmail.com>
3715
4ddf94bd 3716 * nsterm.m (ns_select): Shortcircuit if reentrant call. (Bug#2564)
ccbc4452 3717
988a7ddb
KH
37182009-03-05 Kenichi Handa <handa@m17n.org>
3719
3720 * font.c (font_select_entity): New function.
3721 (font_find_for_lface): Use font_select_entity to select a font.
3722
3723 * fontset.c (fontset_find_font): If a font found without
a8a3728b 3724 restricting to the characters C doesn't support C, try to find a
988a7ddb
KH
3725 font with C restriction.
3726
98a326f7 37272009-03-04 Nikolaj Schumacher <me@nschum.de>
2f462d73 3728
be1bce46 3729 * nsfont.m (nsfont_draw): Compare ns_antialias_text against lisp value.
2f462d73 3730
10ea2b82
JR
37312009-03-04 Jason Rumney <jasonr@gnu.org>
3732
2c93b248 3733 * w32fns.c (w32_wnd_proc): Only ignore IME messages for the
4891ba1d 3734 characters that have already been read. (Bug#2569)
2c93b248 3735
10ea2b82
JR
3736 * image.c (xbm_read_bitmap_data, png_load, svg_load_image):
3737 Log an error message if check_image_size failed.
3738 (xpm_load_image, pbm_load, jpeg_load, tiff_load, gif_load)
4891ba1d 3739 (gs_load): Mention max-image-size in size error message. (Bug#2560)
10ea2b82 3740
71a0c011
EZ
37412009-03-02 Eli Zaretskii <eliz@gnu.org>
3742
3743 * callproc.c (Fcall_process): Bind inhibit-modification-hooks to t
3744 when decoding process output.
3745
2f63bba8
RS
37462009-03-01 Richard M Stallman <rms@gnu.org>
3747
3748 * m/mips.h (DATA_SEG_BITS, XUINT, XSET): Definitions disabled.
3749
3750 * emacs.c (gdb_data_seg_bits) [USE_LSB_TAG]: Make it 0.
3751
0a9564cb
EZ
37522009-02-28 Eli Zaretskii <eliz@gnu.org>
3753
3754 * coding.c (decode_coding_utf_8, decode_coding_utf_16)
3755 (decode_coding_emacs_mule, decode_coding_iso_2022)
3756 (encode_coding_iso_2022, decode_coding_sjis, decode_coding_big5)
3757 (decode_coding_raw_text, decode_coding_charset)
3758 (setup_coding_system, decode_eol, decode_coding, consume_chars):
3759 Honor inhibit-eol-conversion. (Bug #2186)
3760
449148b3
JR
37612009-02-28 Jason Rumney <jasonr@gnu.org>
3762
3763 * coding.c (detect_coding_charset): If not checking latin extra,
3764 fail on characters between 0x80 and 0xA0. (Bug#2354)
3765
a4aee864
EZ
37662009-02-28 Eli Zaretskii <eliz@gnu.org>
3767
3768 * coding.c (detect_coding_charset): Fix change from 2008-10-21.
2a1573ff 3769 Also, check iso-latin-*, not only iso-8859-*. (Bug#2497)
a4aee864 3770
d88bee5a
GM
37712009-02-27 Glenn Morris <rgm@gnu.org>
3772
3773 * callint.c (Finteractive): Doc fix.
3774
a808f22d
KH
37752009-02-27 Kenichi Handa <handa@m17n.org>
3776
3777 * lread.c (read_escape): Signal an error for invalid \UXXXXXXXX.
3778
caf8d60c
CY
37792009-02-27 Chong Yidong <cyd@stupidchicken.com>
3780
3781 * font.c (font_style_to_value): Set value for unknown symbols to
3782 100 instead of 255.
b61137ea
CY
3783 (weight_table, slant_table, width_table): Treat "unspecified" as
3784 the default value.
caf8d60c 3785
1a0de25c
JB
37862009-02-26 Juanma Barranquero <lekktu@gmail.com>
3787
3788 * fileio.c (Fnext_read_file_uses_dialog_p): Fix typo in docstring.
3789
8fc45744
JB
37902009-02-25 Juanma Barranquero <lekktu@gmail.com>
3791
107bd7d1
JB
3792 * lread.c (Fload): Stop checking Vloads_in_progress and signal
3793 error as soon as a recursive load is detected.
8fc45744 3794
f097e223
AR
37952009-02-24 Adrian Robert <Adrian.B.Robert@gmail.com>
3796
3797 * nsterm.m (ns_ring_bell): Convert rect to window coordinates
3798 before caching.
3799
8810a12f
KH
38002009-02-24 Kenichi Handa <handa@m17n.org>
3801
3802 * fontset.c (fontset_find_font): Fix the condition for checking
3803 unavailable font.
3804
2c7d1565
GM
38052009-02-24 Glenn Morris <rgm@gnu.org>
3806
3807 * xfaces.c (Finternal_set_font_selection_order): Remove leading
3808 whitespace that confuses documentation.
3809
a20878b6
MB
38102009-02-23 Miles Bader <miles@gnu.org>
3811
3812 * process.c (Flist_system_processes, Fprocess_attributes)
3813 (syms_of_process): Rename `system-process-attributes' to
3814 `process-attributes'.
3815
b3b58c01
AS
38162009-02-22 Andreas Schwab <schwab@linux-m68k.org>
3817
1b3b981b
AS
3818 * coding.h (struct coding_system): Make safe_charsets a pointer to
3819 unsigned char.
3820 * coding.c (CODING_ISO_REQUEST): Check for safe_charsets content
3821 being 255.
3822 (SAFE_CHARSET_P): Likewise.
3823 (setup_iso_safe_charsets): Properly setup safe_charsets.
3824 (Fdefine_coding_system_internal): Likewise.
3825 (setup_coding_system): Likewise. Remove unneeded casts.
3826 (detect_coding_iso_2022): Compare Viso_2022_charset_list with
3827 CODING_ATTR_CHARSET_LIST, not CODING_ATTR_SAFE_CHARSETS. Remove
3828 unneeded casts.
3829
b3b58c01
AS
3830 * insdel.c (del_range_2): Don't modify gap contents when called
3831 from decode_coding_object. (Bug#1809)
3832
0b6f228c
CY
38332009-02-21 Chong Yidong <cyd@stupidchicken.com>
3834
3835 * data.c (syms_of_data): Define Qfont_spec, Qfont_entity, and
3836 Qfont_object.
3837 (Ftype_of): Recognize font objects.
3838
3839 * lisp.h: Define Qfont_spec, Qfont_entity, Qfont_object extern.
3840
3841 * font.c (Qfont_spec, Qfont_entity, Qfont_object): Definitions
3842 moved to data.c.
3843
52f8870b
AR
38442009-02-20 Adrian Robert <Adrian.B.Robert@gmail.com>
3845
3846 * nsterm.m (x_make_frame_invisible): Unset async_visible,
3847 async_iconified. Based on a patch by Christian Lynbech
3848 <christian.lynbech@tieto.com>.
3849 (EmacsView-windowDidMiniaturize:): Unset async_visible.
3850
7087d5e9
GM
38512009-02-20 Glenn Morris <rgm@gnu.org>
3852
3853 * syntax.c (Fskip_chars_forward): Fix doc typo.
3854
41d2ceef
CY
38552009-02-20 Chong Yidong <cyd@stupidchicken.com>
3856
3857 * keymap.c (Fkeymap_parent): Doc fix (Bug#2391).
3858
1a3b7ca6
CY
38592009-02-19 Chong Yidong <cyd@stupidchicken.com>
3860
3861 * xfns.c (Fx_create_frame): Give Xft driver a higher priority.
3862
73cce38d
KH
38632009-02-19 Kenichi Handa <handa@m17n.org>
3864
3865 * coding.c (detect_coding): Preserve coding->mode.
2bc550cb 3866 Don't overflow coding->carryover. (Bug#2370)
73cce38d 3867
a51092ee
DN
38682009-02-18 Dan Nicolaescu <dann@ics.uci.edu>
3869
3870 * m/ibmrs6000.h (ADDR_CORRECT): Restore, removed by mistake on 2008-07-23.
3871
c423ecca
KH
38722009-02-18 Kenichi Handa <handa@m17n.org>
3873
3874 * font.c (font_check_otf_features): Fix handling of `nil' element.
3875 (Ffont_spec): Describe :lang and :otf in the docstring.
3876
4c1958f4
AS
38772009-02-16 Andreas Schwab <schwab@suse.de>
3878
3879 * coding.c (Fcheck_coding_systems_region): Fix test for unibyte
3880 string.
3881
5704f39a
KH
38822009-02-16 Kenichi Handa <handa@m17n.org>
3883
3884 * coding.c (Fcheck_coding_systems_region): Fix typo; Qt -> Qnil.
a057d86a 3885 (Bug#1723)
5704f39a 3886
8f0085aa
CY
38872009-02-14 Chong Yidong <cyd@stupidchicken.com>
3888
a057d86a 3889 * dispextern.h (struct iterator_stack_entry): New line_wrap member.
8f0085aa
CY
3890
3891 * xdisp.c (push_it, pop_it): Save and restore line_wrap.
3892 (handle_line_prefix): Suppress wrapping of wrap prefixes.
3893
aff01dd9
EZ
38942009-02-14 Eli Zaretskii <eliz@gnu.org>
3895
3896 * msdos.c (MAX_SCREEN_BUF): New macro.
3897 (IT_write_glyphs): Make screen_buf[] always be MAX_SCREEN_BUF-long.
3898 Encode the entire run of glyphs sharing the same face, instead of
3899 doing that one glyph at a time (fixes a bug with displaying
3900 double-size characters).
3901
ba301db3
AR
39022009-02-13 Adrian Robert <Adrian.B.Robert@gmail.com>
3903
3904 * nsfns.m (ns-read-file-name): BLOCK_INPUT while showing dialog.
3905
3906 * nsmenu.m (pop_down_menu): Check popup_activated_flag.
3907 (ns_popup_dialog, EmacsDialogPanel-runDialogAt:): Let
a057d86a 3908 pop_down_menu do the cleanup work as it is always called. (Bug#2154)
ba301db3
AR
3909
3910 * nsfont.m (nsfont_make_fontset_for_font): For now, don't try to
a057d86a 3911 set fontset font for "mathematical-" sub-scripts. (Bug #2218)
ba301db3 3912
51d861de
SM
39132009-02-12 Stefan Monnier <monnier@iro.umontreal.ca>
3914
3915 * keyboard.c (adjust_point_for_property): Allow stopping betwen two
3916 invisible areas.
3917
7fed8996
JR
39182009-02-12 Jason Rumney <jasonr@gnu.org>
3919
631ea4fb
JR
3920 * w32font.c (check_face_name): Check for fake helv. (Bug#2275)
3921 (add_font_entity_to_list): Call check_face_name even when family
3922 is unspecified.
3923
cb4a3e42
JR
3924 * w32term.c (x_display_pixel_height, x_display_pixel_width):
3925 Release DC when finished. Use NULL window to refer to desktop.
631ea4fb 3926 (w32_term_init): Use NULL window to refer to desktop. (Bug#460)
cb4a3e42 3927
7fed8996 3928 * w32font.c (add_font_entity_to_list): Fix check for substituted
631ea4fb 3929 raster fonts. (Bug#2219)
7fed8996 3930
895416e3
KH
39312009-02-12 Kenichi Handa <handa@m17n.org>
3932
3933 * composite.c (MAX_AUTO_COMPOSITION_LOOKBACK): New macro.
3934 (composition_gstring_width): Fix handling of LGLYPH_YOFF.
3935 (autocmp_chars): Use fast_looking_at. Don't compose more
1dacf998 3936 characters than MAX_COMPOSITION_COMPONENTS.
895416e3
KH
3937 (find_automatic_composition): While looking forward and backward,
3938 check static composition. Fix where to stop looking forward.
3939 (composition_adjust_point): Fix checking of static composition.
3940 (Fcomposition_get_gstring): Pay attention to
1dacf998 3941 MAX_COMPOSITION_COMPONENTS.
895416e3
KH
3942
3943 * lisp.h (fast_looking_at): Extern it.
3944
3945 * search.c (fast_looking_at): New function.
3946
51d861de 3947 * term.c (encode_terminal_code): Adjust for the change of
895416e3
KH
3948 <struct glyph>.u.cmp.to.
3949 (append_composite_glyph): Likewise.
3950
51d861de 3951 * xdisp.c (fill_gstring_glyph_string): Adjust for the change of
895416e3
KH
3952 <struct glyph>.u.cmp.to. Check if the glyph belongs to the same
3953 composition.
51d861de 3954 (append_composite_glyph): Adjust for the change of
895416e3
KH
3955 <strcut glyph>.u.cmp.to.
3956
8510724d
JB
39572009-02-11 Juanma Barranquero <lekktu@gmail.com>
3958
3959 * casetab.c (init_casetab_once):
3960 * coding.c (ALLOC_CONVERSION_WORK_AREA):
3961 * font.c (font_update_lface):
3962 * fontset.c (Fnew_fontset):
3963 * ftfont.c (ftfont_drive_otf):
3964 * xfont.c (xfont_open):
3965 * xftfont.c (xftfont_get_xft_draw): Remove spurious semicolons.
3966
294fa707
SM
39672009-02-11 Stefan Monnier <monnier@iro.umontreal.ca>
3968
3969 * fileio.c (Fwrite_region): !NILP -> CONSP.
3970
b5bfebec
AS
39712009-02-10 Andreas Schwab <schwab@suse.de>
3972
3973 * process.c (send_process): Properly relocate pointer into data
adab88bd 3974 when using encoded data. (Bug#2272)
b5bfebec 3975
cb84a2be
KH
39762009-02-08 ARISAWA Akihiro <ari@mbf.sphere.ne.jp>
3977
3978 * coding.c (detect_coding_charset): Fix previous change.
3979
89e09428
JR
39802009-02-08 Jason Rumney <jasonr@gnu.org>
3981
3982 * w32fns.c (w32_hide_hourglass): Handle case where frame
adab88bd 3983 disappeared while hourglass was displayed. (Bug #2193)
89e09428 3984
4470a277
AS
39852009-02-07 Andreas Schwab <schwab@suse.de>
3986
3987 * unexelf.c (unexec): Fix error message.
3988
3175b12a
AR
39892009-02-07 Adrian Robert <Adrian.B.Robert@gmail.com>
3990
3991 * nsterm.m (EmacsApp-sendEvent:): Defer NSApplicationDefined event
adab88bd 3992 when modal window is active. (Bug #2152)
3175b12a
AR
3993 (applicationShouldTerminate:): Remove now-unneeded while loop
3994 around NSRunAlertPanel.
3995
3996 * nsmenu.m (popupSession): New file-global variable.
3997 (pop_down_menu): End the popupSession before closing dialog.
3998 (ns_popup_dialog): BLOCK_INPUT around dialog presentation.
3999 (EmacsDialogPanel-runDialogAt:): Don't place window (superfluous),
4000 don't query NSApp for events (just sleep instead).
4001
8434d0b8
EZ
40022009-02-07 Eli Zaretskii <eliz@gnu.org>
4003
51d861de
SM
4004 * coding.c (syms_of_coding) <translation-table-for-input>:
4005 Modify doc string to discourage use for character code unification.
8434d0b8 4006
aa82edfd
CY
40072009-02-07 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
4008
4009 * atimer.c (run_timers): Update pending_atimers.
4010
2d283c7c
CY
40112009-02-06 Chong Yidong <cyd@stupidchicken.com>
4012
eb306cab
CY
4013 * image.c (svg_load_image): Fix last change.
4014
2d283c7c
CY
4015 * xfns.c (Fx_create_frame): Signal an error if no font is
4016 found (Bug#2147).
4017
4d8e170e
JB
40182009-02-05 Juanma Barranquero <lekktu@gmail.com>
4019
4020 * character.c (syms_of_character) <script-representative-chars>:
4021 Fix typo in docstring.
4022
c96169a0
AR
40232009-02-04 Adrian Robert <Adrian.B.Robert@gmail.com>
4024
4025 * nsmenu.m (pop_down_menu): New function.
4026 (ns_popup_dialog): Call it on unwind.
4027 (EmacsDialogPanel-runDialogAt:): Check popup_activated_flag and
4028 call timer_check() (Bug#2154).
4029 (EmacsMenu-menuNeedsUpdate:): Don't call ns_update_menu if
4030 handling_signal is set.
4031 (EmacsMenu-fillWithWidgetValue:): Set submenu title.
4032
31fd7c5c 4033 * config.in: Get rid of COCOA_EXPERIMENTAL_CTRL_G.
c96169a0
AR
4034
4035 * s/darwin.h: Same and NO_SOCK_SIGIO as well.
4036
4037 * nsterm.m (ns_read_socket): Same and don't set handling_signal.
4038
51d861de
SM
4039 * keyboard.c (poll_for_input_1, handle_async_input):
4040 Set handling_signal under HAVE_NS.
c96169a0 4041
aacd8ba1
GM
40422009-02-04 Glenn Morris <rgm@gnu.org>
4043
4044 * fileio.c (Fwrite_region): Doc fix (mention annotate-functions).
4045
4cb75c4b
KH
40462009-02-04 Kenichi Handa <handa@m17n.org>
4047
4048 * Makefile.in (composite.o): Depends on frame.h and termhooks.h.
4049
4050 * charset.c (Fchar_charset): New optional arg restriction.
4051
4052 * coding.h (coding_system_charset_list): Extern it.
4053
4054 * coding.c (coding_system_charset_list): New function.
4055
4056 * composite.c: Include coding.h and termhooks.h.
4057 (composition_gstring_p): Fix for the terminal case.
4058 (composition_gstring_width): Likewise.
4059 (fill_gstring_body): Likewise.
4060 (autocmp_chars): For terminal, call Fcomposition_get_gstring with
4061 the frame.
4062 (composition_compute_stop_pos): Adjust cmp_it->stop_pos if point
4063 is within a composition.
867d4bb3 4064 (Fcomposition_get_gstring): Fix the terminal case.
4cb75c4b
KH
4065
4066 * term.c (encode_terminal_code): Fix handling of composition.
4067 (produce_composite_glyph): For static composition, get pixel_width
4068 from struct composition.
4069
826ba17e
AS
40702009-02-02 Andreas Schwab <schwab@suse.de>
4071
4072 * unexelf.c (unexec): Handle unaligned bss offset.
4073
8ad093db
AR
40742009-02-01 Adrian Robert <Adrian.B.Robert@gmail.com>
4075
4076 * nsterm.m (ns_read_socket): Copy 2009-01-29 and 2009-01-30
4077 XT,w32read_socket changes to ns_read_socket.
d0a76a6e 4078
8ad093db
AR
4079 * keyboard.c (handle_interrupt): Don't call
4080 quit_throw_to_read_char() under NS.
d0a76a6e 4081
8ad093db
AR
4082 * blockinput.h: Remove NS-specific code.
4083
4d18a7a2
DN
40842009-01-30 Dan Nicolaescu <dann@ics.uci.edu>
4085
db878925
DN
4086 * dispnew.c (window_change_signal): Don't try to get the size of a
4087 suspended tty frame.
4088 * term.c (Fresume_tty): Resize if the size has changed while the
4089 tty was suspended.
4090
4d18a7a2
DN
4091 * alloc.c (mark_stack): Properly conditionalize previous change.
4092
8984df7c
JB
40932009-01-30 Juanma Barranquero <lekktu@gmail.com>
4094
4095 * w32inevt.c (w32_console_read_socket) [SYNC_INPUT]:
4096 * w32term.c (w32_read_socket) [SYNC_INPUT]:
4097 Remove; this code is not used on Windows.
4098
75f4f1ac
EZ
40992009-01-30 Eli Zaretskii <eliz@gnu.org>
4100
4101 * coding.c (detect_eol, decode_eol): Handle text with DOS-style
4102 EOLs that also has stray ^M characters.
4103
07a1e794
JB
41042009-01-30 Juanma Barranquero <lekktu@gmail.com>
4105
4106 * atimer.c (run_timers, alarm_signal_handler):
4107 * keyboard.c (pending_signals, handle_async_input, init_keyboard):
4108 * w32inevt.c (w32_console_read_socket):
4109 * w32term.c (w32_read_socket):
4110 * xterm.c (XTread_socket): Use "#ifdef SYNC_INPUT" where appropriate.
4111
a8b11cc9
CY
41122009-01-30 Chong Yidong <cyd@stupidchicken.com>
4113
4114 * callproc.c (Vtemp_file_name_pattern): Remove DEFVAR_LISP.
4115 Initialize it as a relative filename pattern.
4116 (init_callproc): Don't initialize Vtemp_file_name_pattern here.
4117 (Fcall_process_region): Simplify temp file creation using
4118 temporary-file-directory.
4119
c279587b
EZ
41202009-01-29 Eli Zaretskii <eliz@gnu.org>
4121
4122 * msdos.c: Rename pending_signals to msdos_pending_signals.
4123 (sig_suspender, sigprocmask): Adjust.
4124
a8fe3242
CY
41252009-01-29 Chong Yidong <cyd@stupidchicken.com>
4126
4127 * keyboard.c (pending_signals): New var.
4128 (poll_for_input, input_available_signal, init_keyboard): Set it.
4129 (process_pending_signals): New function.
4130
4131 * lisp.h (QUIT): Check pending_signals instead of
4132 interrupt_input_pending. Use process_pending_signals.
4133
51d861de 4134 * atimer.c (run_timers, alarm_signal_handler): Update pending_signals.
a8fe3242 4135
51d861de 4136 * process.c (wait_reading_process_output): Use process_pending_signals.
a8fe3242
CY
4137
4138 * sysdep.c (emacs_write): Use process_pending_signals.
4139
4140 * xterm.c (XTread_socket): Update pending_signals.
4141
4142 * w32term.c (w32_read_socket): Update pending_signals.
4143
4144 * w32inevt.c (w32_console_read_socket): Update pending_signals.
4145
6570a1c4
KH
41462009-01-29 Kenichi Handa <handa@m17n.org>
4147
4148 * xftfont.c (xftfont_has_char): New function.
4149 (syms_of_xftfont): Register xftfont_has_char in xftfont_driver.
4150
d72a4afa
AR
41512009-01-29 Adrian Robert <Adrian.B.Robert@gmail.com>
4152
4153 * nsterm.h (EmacsPrefsController.cursorBlinkSlider): Only define
4154 under GNUstep.
4155 (ns_query_color): New declaration.
4156
4157 * nsterm.m (ns_confirm_quit): New variable.
4158 (ns_set_default_prefs, syms_of_nsterm, ns_term_init): Initialize it.
4159 (EmacsApp-applicationShouldTerminate:): Use it.
4160 (EmacsPrefsController): Let user set it.
4161 (ns_query_color): New function.
4162 (ns_defined_color): Use it.
4163 (ns_initialize): Drop.
4164 (ns_term_init): Add two lines from ns_initialize(), and set
4165 input_interrupt_mode to nil.
4166
4167 * image.c (svg_load_image): Don't right-shift background RGB when
6af84d77 4168 obtained from FRAME_BACKGROUND_PIXEL. Under HAVE_NS use ns_query_color.
d72a4afa 4169
9fe78804
KH
41702009-01-28 Kenichi Handa <handa@m17n.org>
4171
4172 * fontset.c (font_for_char): Use assq_no_quit, not assoc_no_quit.
f088b054
KH
4173 (fontset_get_font_group): Remember that no font-group is specified
4174 for C.
9fe78804 4175
fa57de36
CY
41762009-01-27 Chong Yidong <cyd@stupidchicken.com>
4177
930600e9
CY
4178 * fns.c (concat): Check for string overflow (bug#1787).
4179
fa57de36
CY
4180 * undo.c (undo_limit, undo_strong_limit, Vundo_outer_limit):
4181 Quadruple undo limits (bug#1501).
4182
7179ce7b
KH
41832009-01-27 Kenichi Handa <handa@m17n.org>
4184
4185 * ftfont.c (ftfont_has_char): If the arg FONT is a font-object,
4186 directly use GT_Get_Char_index.
4187
4188 * xftfont.c (struct xftfont_info): New member `index'.
4189
4190 * fontset.c (font_for_char): Use assq_no_quit, not assoc_no_quit.
51d861de 4191 (Ffontset_font): Adjust for the change of fontset entry.
7179ce7b 4192
5be8fcc0
CY
41932009-01-26 Kenichi Handa <handa@m17n.org>
4194
4195 * fontset.c (fontset_find_font): Fix handling of non-cons return
4196 value of fontset_get_font_group.
4197 (fontset_font): Revert last change.
4198
19ae3e61
JR
41992009-01-26 Jason Rumney <jasonr@gnu.org>
4200
4201 * w32font.c (w32font_list_internal): Return quickly if registry is
4202 unknown. Simplify final return.
4203 (add_font_entity_to_list): Break complex logic down into more
4204 manageable chunks. Move unknown registry check to
4205 w32font_list_internal.
4206
8612b71a
AR
42072009-01-25 Adrian Robert <Adrian.B.Robert@gmail.com>
4208
4209 Changes to remove Feval calls from GUI under NS.
4210
d8038940
JB
4211 * nsterm.h: Move KEY_NS_... definitions here from nsterm.m.
4212 Add NS_TOGGLE_TOOLBAR, NS_PUT_WORKING_TEXT, NS_UNPUT_WORKING_TEXT.
8612b71a
AR
4213 Remove NS_INSERT_WORKING_TEXT, NS_DELETE_WORKING_TEXT.
4214
4215 * nsterm.m: Move KEY_NS_... definitions to nsterm.h.
4216 (EmacsView-toggleToolbar:): Use KEY_NS_TOGGLE_TOOLBAR.
4217 (EmacsView-setMarkedText:,-deleteWorkingText:): Use NS_TEXT_EVENT
4218 instead of NON_ASCII_KEYSTROKE_EVENT.
4219 (EmacsApp-terminate:): Use KEY_NS_POWER_OFF instead of Feval.
4220 (EmacsApp-applicationShouldTerminate:): Query user.
4221 (EmacsPreferencesController-runHelp:): Use KEY_NS_INFO_PREFS
4222 instead of Feval.
4223
4224 * termhooks.h (NS_TEXT_EVENT): New event type under HAVE_NS.
4225
4226 * keyboard.c (kbd_buffer_get_event): Check for it.
4227 (keys_of_keyboard): Define lispy keys for
4228 ns-put/unput-working-text.
4229
4230 * nsmenu.m (ns_popup_dialog): Resync window setting with X and W32
4231 versions.
4232 (EmacsDialog-runDialogAt:): Use NSModalPanelRunLoopMode.
4233
6288ae55
CY
42342009-01-25 Chong Yidong <cyd@stupidchicken.com>
4235
4236 * dispnew.c (buffer_posn_from_coords): Use Fset_buffer instead of
64cc3cf6 4237 setting current_buffer directly. (Bug#2044)
6288ae55 4238
289e7f8f
CY
42392009-01-24 Chong Yidong <cyd@stupidchicken.com>
4240
5ce87308 4241 * fontset.c (fontset_font): If we know there is no font, don't do
d8038940 4242 any work. (Bug#1952, bug#1990).
5ce87308 4243
64cc3cf6 4244 * font.c (font_parse_xlfd): Handle patterns of length < 2. (Bug#1802)
289e7f8f 4245
b3243e6f
AR
42462009-01-23 Adrian Robert <Adrian.B.Robert@gmail.com>
4247
4248 * emacs.c (main): Do fork+exec under --daemon in Cocoa.
d900b2af
AR
4249 (ns_no_defaults): New declaration.
4250 (main): Use it.
e0d2e69a 4251
d900b2af 4252 * nsterm.h (ns_no_defaults): New declaration.
e0d2e69a 4253
d900b2af 4254 * nsfns.m (x_get_string_resource): Don't read when ns_no_defaults.
e0d2e69a 4255
d900b2af
AR
4256 * nsterm.m (ns_no_defaults): New variable.
4257 (ns_initialize): Don't read defaults when ns_no_defaults.
4258 (EmacsView-readSelectionFromPasteboard:)
4259 (writeSelectionToPasteboard:types:): New stubbed-out methods for
d8038940 4260 NSServicesRequests protocol. (Bug#1435)
27521ca6
AR
4261 (ns_dumpglyphs_stretch): New function.
4262 (ns_draw_glyph_string): Use it, parallel Yamamoto Mitsuharu change
d8038940 4263 of 2008-11-15 to other terms. (Bug#615)
b3243e6f 4264
e0d2e69a
AR
4265 * nsimage.m (setPixmapData:): Set to ignore image DPI.
4266
3ac71f5d
CY
42672009-01-23 Giorgos Keramidas <keramida@freebsd.org> (tiny change)
4268
4269 * alloc.c (mark_stack): Use "flushw" instead of "ta 3" assembly
4270 call for Sparc64.
4271
3fe53a83
AR
42722009-01-22 Adrian Robert <Adrian.B.Robert@gmail.com>
4273
4274 * nsfns.m:
4275 * nsgui.h:
4276 * nsmenu.m:
4277 * nsselect.m:
4278 * nsterm.h:
4279 * nsterm.m: Remove '23' comments that indicated code added during
4280 update from emacs-20 -> emacs-23.
4281
10f87c6f 42822009-01-22 Adrian Robert <Adrian.B.Robert@gmail.com>
a3b53a85
AR
4283
4284 * nsterm.m (EmavsView-keyDown:): Treat nil as Qnone for
3a88a825 4285 ns_alternate_modifier. (Bug#1217)
a3b53a85 4286
c7cef62d
AR
4287 * nsmenu.m (EmacsMenu-parseKeyEquiv:, addItemWithWidgetValue:):
4288 Display all shortcuts, including those w/o super modifier.
4289
575fb8bd
AR
4290 * nsfns.m (ns-read-file-name): Fix typo in assignment statement.
4291
918b848b
CY
42922009-01-22 Chong Yidong <cyd@stupidchicken.com>
4293
4294 * fileio.c (Vwrite_region_post_annotation_function)
4295 (Vwrite_region_annotation_buffers): New vars.
4296 (build_annotations_unwind): Just reset
4297 Vwrite_region_annotation_buffers.
4298 (Fwrite_region): Initialize Vwrite_region_annotation_buffers.
4299 Call write-region-post-annotation-function.
4300 (build_annotations): Add to Vwrite_region_annotation_buffers if
4301 buffer changes.
4302
a39e2539
AR
43032009-01-21 Adrian Robert <Adrian.B.Robert@gmail.com>
4304
4305 * nsterm.h (EmacsApp-setAppleMenu:): Conditionalize more correctly on
4306 Tiger.
51d861de
SM
4307 * nsfns.m (ns_do_applescript):
4308 Conditionalize typeUTF16ExternalRepresentation on Tiger.
a39e2539 4309
35ed44db
AR
43102009-01-21 Wolfgang Lux <wolfgang.lux@gmail.com> (tiny change)
4311
4312 * nsterm.m (EV_TRAILER): Always use emacsframe for frame_or_window.
4313
cbe0b5bf
AR
43142009-01-21 Adrian Robert <Adrian.B.Robert@gmail.com>
4315
4316 * nsmenu.m (NSMENUPROFILE): Change #if style.
4c7077c3 4317
6049d3a0
AR
4318 * nsterm.h (EmacsPrefsController): Add -setPanelFromDefaultValues.
4319
4320 * nsterm.m (x_set_frame_alpha): Add prototype.
a9b4df69
AR
4321 (ns_fake_keydown, EmacsView-keyUp:): New variable and function to
4322 handle Ctrl-tab. (Bug#1841)
4323 (ns_get_color): Use unsigned long long for scanned hex string value.
4324 (ns_term_shutdown): Abort on non SIGTERM signals.
e889fa06 4325 (EmacsPrefsController-setDefaultFont:,-setColors:): Raise the frame.
b71ac3dd 4326 (EmacsPrefsController-setPanelFromDefaultValues): New function.
3a88a825 4327 (EmacsPrefsController-resetToDefaults:): Use it. (Bug#1801)
35ed44db 4328 (ns_font_to_xlfd, ns_fontname_to_xlfd): Remove, unused.
d3810c21 4329 (ns_defined_color): Fix settings of the XColor variable fields:
3a88a825 4330 red,green,blue scale to 2-byte, pixel's parts to 1-byte. (Bug#1663)
cbe0b5bf 4331
d3810c21 4332 * nsimage.m (EmacsImage+allocInitFromFile:): Set to ignore image
3a88a825 4333 DPI. (Bug#1316)
d3810c21
AR
4334 (EmacsImage-setPixelAtX:Y:toRed:green:blue:alpha:): Fix color
4335 values in onTiger section.
4c7077c3 4336
e301e634
CY
43372009-01-19 Chong Yidong <cyd@stupidchicken.com>
4338
7f82490b
CY
4339 * xfaces.c (Finternal_set_lisp_face_attribute, Fx_list_fonts):
4340 Check return value of font_spec_from_name.
64cc3cf6 4341 (Fx_list_fonts): Doc fix. (Bug#1951)
7f82490b
CY
4342
4343 * font.c (font_spec_from_name): Return Qnil if font name could not
4344 be parsed.
4345 (font_parse_name): Treat a `?' character as part of an XLFD.
4346
e301e634
CY
4347 * fns.c (Fsubstring): Doc fix.
4348
1c0db158
KH
43492009-01-19 Kenichi Handa <handa@m17n.org>
4350
51d861de 4351 * ftfont.c (ftfont_lookup_cache): Check the return value of FcFontList.
1c0db158
KH
4352 (ftfont_list): Likewise.
4353
acf20901
JB
43542009-01-18 Juanma Barranquero <lekktu@gmail.com>
4355
fff4e459
JB
4356 * dbusbind.c (Fdbus_register_signal):
4357 * process.c (conv_sockaddr_to_lisp):
4358 * w32fns.c (Fw32_battery_status): Use empty_unibyte_string.
4359
acf20901
JB
4360 * callproc.c (Fgetenv_internal): Doc fix.
4361
e7abcdfb
CY
43622009-01-16 Chong Yidong <cyd@stupidchicken.com>
4363
4364 * xfns.c (x_make_gc): Don't allocate stipple member for gc_values;
4365 it is not even used.
4366
b60861e6
GM
43672009-01-16 Glenn Morris <rgm@gnu.org>
4368
4369 * font.c (Ffont_variation_glyphs): Silence compiler.
4370
8db52afe
JB
43712009-01-15 Juanma Barranquero <lekktu@gmail.com>
4372
4373 * sound.c (SOUND_WARNING): Use _snprintf, for MSVC compatibility.
4374 Reported by David Robinow <drobinow@gmail.com>.
4375
4cddb209
KH
43762009-01-15 Kenichi Handa <handa@m17n.org>
4377
51d861de 4378 * coding.c (detect_coding_system): Fix handling of null_byte_found.
4cddb209 4379
f247f67b
JR
43802009-01-14 Jason Rumney <jasonr@gnu.org>
4381
4382 * frame.c (x_set_font): Always store a font to the font parameter,
fff4e459 4383 never a fontset. (Bug#1562)
f247f67b 4384
f56a4450
KH
43852009-01-14 Kenichi Handa <handa@m17n.org>
4386
4387 * coding.c (TWO_MORE_BYTES): New macro.
fff4e459 4388 (detect_coding_utf_16): Use TWO_MORE_BYTES instead of ONE_MORE_BYTE.
f56a4450 4389
4e99855e
CY
43902009-01-13 Chong Yidong <cyd@stupidchicken.com>
4391
4392 * font.c (font_clear_prop): If clearing the family, clear the font
4393 width index too.
4394
fff4e459 4395 * xfaces.c (Finternal_set_lisp_face_attribute): Revert last change.
4e99855e 4396
24f01470
JB
43972009-01-12 Juanma Barranquero <lekktu@gmail.com>
4398
4399 * sound.c [WINDOWSNT] (SOUND_WARNING): New macro.
4400 (do_play_sound): Use it. Don't pass a hardcoded buffer size to mci
4401 functions, use sizeof.
4402
a41240a3
MR
44032009-01-12 Martin Rudalics <rudalics@gmx.at>
4404
4405 * keyboard.c (read_char): Fix case where last_nonmenu_event
4406 returned a bad value with submenus. (Bug#447)
4407
944636b8
CY
44082009-01-12 Chong Yidong <cyd@stupidchicken.com>
4409
4410 * xfaces.c (Finternal_set_lisp_face_attribute): If setting the
4411 family, clear the font width index too.
4412
0dad7c6f
JR
44132009-01-11 Jason Rumney <jasonr@gnu.org>
4414
4415 * keyboard.c (cmd_error_internal): Exit when errors occur before
4416 frame creation and not in daemon mode. (Bug#1836)
4417
7c2363af
CY
44182009-01-10 Chong Yidong <cyd@stupidchicken.com>
4419
4420 * xdisp.c (pos_visible_p): When iterator stops on the last glyph
4421 of a display vector, backtrack.
4422 (try_window_reusing_current_matrix): Check glyph type before
4423 referencing charpos member.
4424
97b1b294
EZ
44252009-01-10 Eli Zaretskii <eliz@gnu.org>
4426
4427 Fix Bug #876:
4428
4429 * coding.c (inhibit_null_byte_detection): New variable.
4430 (detect_coding, detect_coding_system): Don't pay attention to null
4431 bytes if inhibit_null_byte_detection is non-zero.
51d861de 4432 (syms_of_coding) <inhibit-null-byte-detection>: Declare and document.
97b1b294
EZ
4433 <inhibit-iso-escape-detection>: Doc fix.
4434
4624b6e3
JR
44352009-01-09 Jason Rumney <jasonr@gnu.org>
4436
4437 * w32font.c (add_font_entity_to_list): Don't report unknown
fff4e459 4438 Windows charset as any unrecognized registry. (Bug#1548)
4624b6e3
JR
4439 Only report Unicode Plane 2 fonts as unicode-sip.
4440
323b840c
CY
44412009-01-09 Chong Yidong <cyd@stupidchicken.com>
4442
51d861de
SM
4443 * xfaces.c (Fx_font_family_list): Delete function.
4444 Move compatibility version to faces.el.
323b840c 4445
51d861de 4446 * font.c (Ffont_family_list): Return a list of strings, not symbols.
323b840c 4447
eba7400d
MR
44482009-01-09 Martin Rudalics <rudalics@gmx.at>
4449
4450 * frame.c (x_set_frame_parameters): Remember requested value for
4451 fullscreen before it's reset by the parameter handler.
4452
4b09796d
GM
44532009-01-09 Glenn Morris <rgm@gnu.org>
4454
4455 * keyboard.c (last_command_char): For clarity, rename to...
46e722a9 4456 (last_command_event): ... and update all users.
4b09796d
GM
4457 (last_input_char): For clarity, rename to...
4458 (last_input_event): ... and update all users.
4459 (last-command-char, last-input-char): Move to subr.el as aliases.
4460 * cmds.c, commands.h: Update for last_command_char rename.
4461
14ccea62
CY
44622009-01-08 Chong Yidong <cyd@stupidchicken.com>
4463
51d861de 4464 * font.c (font_open_for_lface): Handle unspecified height attribute.
14ccea62 4465
5f004711
JR
44662009-01-08 Jason Rumney <jasonr@gnu.org>
4467
4468 * w32fns.c (Vx_pointer_shape, Vx_nontext_pointer_shape)
4469 (Vx_mode_pointer_shape, Vx_window_horizontal_drag_shape)
4470 (Vx_hourglass_pointer_shape, Vx_sensitive_text_pointer_shape):
4471 Don't declare.
fff4e459 4472 (syms_of_w32fns): Don't define x-pointer-shape variable. (Bug#1485)
5f004711
JR
4473 (x_create_tip_frame) [GLYPH_DEBUG]: Enable image debugging code.
4474
b71f6f73
KH
44752009-01-07 Kenichi Handa <handa@m17n.org>
4476
50b06221 4477 * fileio.c (Finsert_file_contents): In the case of replace,
f56a4450 4478 remember the coding system used for decoding in
50b06221
KH
4479 coding_system (Bug#1039).
4480
b71f6f73 4481 * coding.c (decode_coding_utf_8): Check byte_after_cr before
79a97217 4482 breaking the loop. (Bug#870)
b71f6f73
KH
4483 (decode_coding_utf_16, decode_coding_emacs_mule)
4484 (decode_coding_iso_2022, decode_coding_sjis, decode_coding_big5)
4485 (decode_coding_charset): Likewise.
4486
56f668f7
MR
44872009-01-05 Martin Rudalics <rudalics@gmx.at>
4488
4489 * frame.c (x_set_frame_parameters): Make sure height (width) get
4490 applied when fullwidth (fullheight) is set. (Bug#1522)
4491
5da9424d
JB
44922009-01-04 Juanma Barranquero <lekktu@gmail.com>
4493
4494 * w32.c: Use 64-bit arithmetic to do FILETIME conversions. (Bug#1766)
4495 (utc_base): Declare as ULONGLONG, not long double.
4496 (convert_time_raw): Delete.
4497 (FILETIME_TO_U64, U64_TO_LISP_TIME): New macros.
4498 (initialize_utc_base): New function.
4499 (convert_time): Use FILETIME_TO_U64, initialize_utc_base.
4500 (convert_from_time_t): Use initialize_utc_base; compute result with
4501 64-bit arithmetic.
4502 (process_times): Use FILETIME_TO_U64, U64_TO_LISP_TIME.
4503
c4605e09
EZ
45042009-01-03 Eli Zaretskii <eliz@gnu.org>
4505
9acef61c 4506 * process.c (Qeuid, Qegid, Qcomm, Qstate, Qppid, Qpgrp, Qsess)
c4605e09
EZ
4507 (Qttname, Qminflt, Qmajflt, Qcminflt, Qcmajflt, Qutime, Qstime)
4508 (Qcutime, Qpri, Qnice, Qthcount, Qstart, Qvsize, Qrss, Qargs)
4509 (Quser, Qgroup, Qetime, Qpcpu, Qpmem, Qtpgid, Qcstime)
4510 [!subprocesses]: Define.
4511 (syms_of_process) [!subprocesses]: Intern and staticpro them.
4512 (Flist_system_processes, Fsystem_process_attributes)
4513 [!subprocesses]: Call list_system_processes and
4514 system_process_attributes instead of returning Qnil.
4515
9acef61c
JB
4516 * dosfns.c (system_process_attributes, list_system_processes):
4517 New functions.
c4605e09
EZ
4518
4519 * vm-limit.c (ret_lim_data) [MSDOS]: New function.
4520
4521 * sysdep.c (list_system_processes, system_process_attributes) [MSDOS]:
4522 Don't use the default (no-op) implementation.
4523
8b7d0a16
JR
45242009-01-03 Jason Rumney <jasonr@gnu.org>
4525
a6d46bc1
JR
4526 * keyboard.c (parse_modifiers_uncached): Wheel events are
4527 clicks (bug#687).
4528
8b7d0a16
JR
4529 * w32term.c (x_query_colors, x_query_color): New functions.
4530
4531 * image.c (x_to_xcolors, png_load): Eliminate W32 specific code.
4532 (svg_load_image): Cast returned pointers from dynamically loaded
4533 functions. Eliminate W32 specific code.
4534
bfe11752
DN
45352009-01-02 Dan Nicolaescu <dann@ics.uci.edu>
4536
89e2438a
DN
4537 * nsfns.m (x_set_foreground_color, x_set_background_color)
4538 (x_set_cursor_color, x_set_icon_name, x_explicitly_set_name)
4539 (x_set_title, x_set_icon_type, x_set_cursor_type): Rename to use
4540 x_ prefix instead of ns_. Update references.
4541 (syms_of_nsfns): Add a FIXME comment.
4542
4543 * nsterm.m (x_set_cursor_type): New prototype.
4544 (setValuesFromPanel): Use it instead of the old ns_ prefixed name.
4545
bfe11752
DN
4546 * sysdep.c (system_process_attributes): Provide Qtime and Qctime
4547 for Solaris instead of incorrectly providing Qutime and Qcutime.
4548
031da700
EZ
45492009-01-02 Eli Zaretskii <eliz@gnu.org>
4550
4551 * w32.c (process_times): Compute sum of utime and stime.
4552 (system_process_attributes): Add Qtime to the alist.
4553
4554 * sysdep.c (system_process_attributes): Compute Qtime and Qctime
4555 and add them to the alist.
4556
4557 * process.c (top level) <Qtime, Qctime>: New variables.
4558 (syms_of_process): staticpro them.
4559 (Fsystem_process_attributes): Add their documentation to the doc
4560 string.
4561
4562 * process.h: Declare Qtime and Qctime.
4563
df23bf08
JR
45642009-01-02 Jason Rumney <jasonr@gnu.org>
4565
9acef61c 4566 * image.c (Qgobject): New symbol.
df23bf08
JR
4567 (syms_of_image): Initialize it.
4568 (init_svg_functions): Load some functions from gobject library.
4569
5bbdf7aa
DN
45702009-01-01 Dan Nicolaescu <dann@ics.uci.edu>
4571
4572 * frame.c (make_terminal_frame): Remove redundant code and useless
4573 block.
4574
63136da6
AS
45752009-01-01 Andreas Schwab <schwab@suse.de>
4576
4577 * process.c (conv_sockaddr_to_lisp): Add workaround for
4578 getsockname bug on BSD.
4579
9ef69046
CY
45802009-01-01 Chong Yidong <cyd@stupidchicken.com>
4581
d6fafbe0
CY
4582 * xfns.c (x_create_tip_frame): Set border width of the X window.
4583
51d861de 4584 * xfaces.c (Finternal_set_lisp_face_attribute): Improve error message.
9ef69046 4585
f9c34147
JR
45862009-01-01 Jason Rumney <jasonr@gnu.org>
4587
9acef61c 4588 * w32term.c (x_new_font): Return font object, not fontset. (Bug#119)
f9c34147
JR
4589 Don't block input, as per earlier xterm.c changes.
4590
f5497e45
AR
45912008-12-31 Adrian Robert <Adrian.B.Robert@gmail.com>
4592
4593 * nsfns.m (ns_appkit_version_str): Rename from ns_appkit_version.
4594 (ns_appkit_version_int): New function.
4595 (x-server-version): Use ns_appkit_version_int and follow 21+
4596 convention of returning 3 integers.
4597
c19cab20
KH
45982008-12-30 Kenichi Handa <handa@m17n.org>
4599
4600 * character.h (CHAR_VARIATION_SELECTOR_P): New macro.
4601 (CHAR_SURROGATE_PAIR_P): New macro.
4602
4603 * font.h (struct font_driver): New member get_variation_glyphs.
4604
9acef61c 4605 * font.c (font_range): Don't require a font for a variation selector.
c19cab20
KH
4606 (Ffont_variation_glyphs): New function.
4607 (syms_of_font): Defsubr it.
4608
4609 * ftfont.c (ftfont_driver): Set the member get_variation_glyphs to
4610 ftfont_variation_glyphs.
4611 (setup_otf_gstring): New function.
4612 (ftfont_drive_otf): Use it.
4613 (ftfont_shape_by_flt): Handle variation selector.
4614 (ftfont_variation_glyphs): New function.
4615
28cd591f
MR
46162008-12-30 Martin Rudalics <rudalics@gmx.at>
4617
4618 * frame.c (Vemacs_iconified): Remove.
4619
7f714baf
JR
46202008-12-30 Jason Rumney <jasonr@gnu.org>
4621
4622 * frame.c (store_frame_param, x_get_arg): Enable newer code on
9acef61c 4623 WINDOWSNT too, as related changes have already been synced. (Bug#117)
7f714baf 4624
9d2d22ab
CY
46252008-12-30 Chong Yidong <cyd@stupidchicken.com>
4626
4627 * indent.c (Fvertical_motion): Don't advance iterator if we have
4628 reseated to the desired position.
4629
4630 * xdisp.c (move_it_to): Handle GET_FROM_STRETCH method when
4631 checking for pos match.
4632
545312c2
KH
46332008-12-30 Kenichi Handa <handa@m17n.org>
4634
1ede3eb6
KH
4635 * insdel.c (copy_text): To convert a non-ASCII char to unibyte,
4636 just get the low 8-bit of the code.
4637
545312c2
KH
4638 * font.c (font_intern_prop): Validate str as multibyte.
4639
bd7bbf29
DN
46402008-12-29 Dan Nicolaescu <dann@ics.uci.edu>
4641
31e0750e
DN
4642 * dispextern.h (struct face): Move lface and hash from the middle
4643 of bitfields.
4644
bd7bbf29
DN
4645 * Makefile.in (INTERVALS_H): Rename from INTERVAL_SRC, update all users.
4646
b5672e7c
DN
46472008-12-29 Dan Nicolaescu <dann@ics.uci.edu>
4648
4649 * Makefile.in (INTERVAL_SRC): Also depend on dispextern.h.
4650 (coding.o, dispnew.o, keymap.o, msdos.o): Depend on INTERVAL_SRC
4651 instead of intervals.h.
4652
d704470f
AS
46532008-12-26 Andreas Schwab <schwab@suse.de>
4654
4655 * keymap.c (map_keymap_char_table_item): Make a copy of KEY if it is a
4656 cons.
4657
54b33868
MR
46582008-12-26 Martin Rudalics <rudalics@gmx.at>
4659
4660 * textprop.c (Qminibuffer_prompt): New variable.
4661 (syms_of_textprop): Initialize it.
4662 * callint.c (Fcall_interactively): For `c', `k', and `K' prompt
4663 in minibuffer-prompt face. (Bug#1662)
4664
40b615d6
JR
46652008-12-25 Jason Rumney <jasonr@gnu.org>
4666
4667 * buffer.c (Fbuffer_swap_text): Use POINTER_TYPE.
4668
baae5c2d
JR
46692008-12-24 Jason Rumney <jasonr@gnu.org>
4670
4671 * ralloc.c (r_alloc_reset_variable): New function.
4672
4673 * buffer.c (Fbuffer_swap_text) [REL_ALLOC]: Reset ralloc's internal
9acef61c 4674 record of what points where. (Bug#716)
baae5c2d 4675
a9051c88
DN
46762008-12-22 Dan Nicolaescu <dann@ics.uci.edu>
4677
4678 * minibuf.c (read_minibuf): Follow the non-interactive case when
4679 running as a daemon, before detaching.
4680
8b146312
AS
46812008-12-22 Andreas Schwab <schwab@suse.de>
4682
4683 * buffer.c (init_buffer): Use realloc instead of xrealloc.
4684 * gtkutil.c (free_widget_value): Use xfree instead of free.
4685
56f2de10
MR
46862008-12-22 Martin Rudalics <rudalics@gmx.at>
4687
4688 * frame.c (delete_frame): New function derived from
4689 Fdelete_frame to handle Qnoelisp value for FORCE argument.
4690 Delete last frame iff FORCE equals Qnoelisp. (Bug#1450)
4691 (Fdelete_frame): Call delete_frame. Remove line from doc-string
4692 saying that FORCE non-nil doesn't run `delete-frame-functions'.
4693 * frame.h: Extern delete_frame.
4694 * window.c (window_loop):
4695 * terminal.c (delete_terminal):
4696 * xterm.c (x_connection_closed):
4697 * xfns.c (Fx_hide_tip):
9acef61c 4698 * w32fns.c (Fx_hide_tip): Call delete_frame instead of Fdelete_frame.
56f2de10 4699
1fc200d6
JR
47002008-12-21 Jason Rumney <jasonr@gnu.org>
4701
4702 * w32uniscribe.c (uniscribe_encode_char): Return FONT_INVALID_CHAR
4703 when character maps to .notdef character.
4704
5e252df2
SM
47052008-12-21 Stefan Monnier <monnier@iro.umontreal.ca>
4706
4707 * keyboard.c (cmd_error_internal): Don't exit in daemon mode, bug#1310.
4708
99b72cc4
JR
47092008-12-20 Jason Rumney <jasonr@gnu.org>
4710
4711 * frame.c (Fmake_terminal_frame): Raise an error when called from
9acef61c 4712 a graphical frame on Windows. (Bug#1325)
99b72cc4 4713
acc49a52
JD
47142008-12-20 Jan Djärv <jan.h.d@swipnet.se>
4715
4716 * frame.c (Fdelete_frame): Set f->menu_bar_vector to Qnil.
4717
6ea15123
CY
47182008-12-20 Chong Yidong <cyd@stupidchicken.com>
4719
4720 * minibuf.c (Fread_buffer): Doc fix.
4721
b2dab6c8
JR
47222008-12-20 Jason Rumney <jasonr@gnu.org>
4723
54ea0c87 4724 * fileio.c (Fexpand_file_name): Do not allow ../ to go beyond the
9acef61c 4725 server name in UNC paths. (Bug#719)
54ea0c87 4726
b2dab6c8 4727 * coding.c (decode_coding): Clear chars_at_source flag when using
9acef61c 4728 charbuf. (Bug#1035)
b2dab6c8 4729
6d1921be
DN
47302008-12-19 Daniel Engeler <engeler@gmail.com>
4731
4732 * sysdep.c (serial_configure): Fix typo.
4733
53934c98
DN
47342008-12-19 Dan Nicolaescu <dann@ics.uci.edu>
4735
4736 * sysdep.c: Include alloca.h.
f4f634e8
DN
4737 (system_process_attributes): Add implementation for Solaris.
4738
4739 * s/sol2-10.h (HAVE_PROCFS, _STRUCTURED_PROC): New defines.
53934c98 4740
06e111a6
DN
47412008-12-19 Dan Nicolaescu <dann@ics.uci.edu>
4742
4743 Reorganize implementation of Flist_system_processes and
4744 Fsystem_process_attributes. No functional changes.
4745 * process.c: Don't #include pwd.h, grp.h and limits.h.
4746 (Flist_system_processes): Just call list_system_processes.
4747 (Fsystem_process_attributes): Just call system_process_attributes.
4748 (procfs_list_system_processes, time_from_jiffies)
4749 (ltime_from_jiffies, get_up_time, procfs_ttyname, MAJOR, MINOR)
4750 (procfs_get_total_memory, procfs_system_process_attributes): Move ...
4751
4752 * sysdep.c: ... here. Include pwd.h, grp.h and limits.h.
4753 (list_system_processes): Rename from
4754 procfs_list_system_processes. Enclose in #ifdef HAVE_PROCFS.
4755 Provide a do nothing implementation.
4756 (system_process_attributes): Rename from
4757 procfs_list_system_processes.
4758 (ltime_from_jiffies, get_up_time, procfs_ttyname, MAJOR, MINOR)
9acef61c 4759 (procfs_get_total_memory): Enclose in #ifdef GNU_LINUX.
06e111a6
DN
4760
4761 * w32.c (list_system_processes): Rename from
4762 w32_list_system_processes.
4763 (system_process_attributes): Rename from
4764 w32_system_process_attributes.
4765
4766 * s/gnu-linux.h (LISTPROC, PROCATTR): Remove.
4767
4768 * process.h (w32_list_system_processes)
4769 (w32_system_process_attributes): Remove.
362654a6
JB
4770 (list_system_processes, system_process_attributes):
4771 New prototypes.
06e111a6 4772
6a705b23
KH
47732008-12-19 Kenichi Handa <handa@m17n.org>
4774
4775 * xfont.c (xfont_decode_coding_xlfd): New function.
4776 (xfont_encode_coding_xlfd): New function.
4777 (xfont_list_pattern): Decode XLFD by iso-8859-1.
4778 (xfont_list): Decode and encode XLFD by iso-8859-1.
4779 (xfont_match): Likewise.
4780 (xfont_list_family): Likewise.
4781 (xfont_open): Likewise.
4782
d66c0241 4783 * ftfont.c (ftfont_open): Generate a multibyte string if given
6a705b23
KH
4784 names are utf-8.
4785
d66c0241 4786 * xftfont.c (xftfont_open): Generate a multibyte string if given
6a705b23
KH
4787 names are utf-8.
4788
5a130941
JD
47892008-12-18 Jan Djärv <jan.h.d@swipnet.se>
4790
4791 * gtkutil.c (xg_frame_resized): Remove check if rows/columns have
4792 changed.
bfd20325
JD
4793 (xg_tool_bar_proxy_callback): Put focus on the frame after we have
4794 clicked on a detached tool bar button.
5a130941 4795
fd95644b
DN
47962008-12-18 Dan Nicolaescu <dann@ics.uci.edu>
4797
4798 * emacs.c (main): Print and error and exit when no data is read
4799 from the pipe.
4800
e6eee6ae
JR
48012008-12-17 Jason Rumney <jasonr@gnu.org>
4802
4803 * w32font.c (w32font_has_char): Always return -1.
4804
a35dd56b
KH
48052008-12-16 Kenichi Handa <handa@m17n.org>
4806
4807 * font.c (font_open_entity): Fix previous change.
4808
0e3635c2
DN
48092008-12-16 Dan Nicolaescu <dann@ics.uci.edu>
4810
4811 * process.c: Include <limits.h>.
4812
d4835507 48132008-12-16 Chetan Pandya <pandyacus@sbcglobal.net> (tiny change)
b5356c39
CY
4814
4815 * font.c (font_update_drivers): Fix mistake in reconstructing the
4816 driver list.
4817
48182008-12-16 Chong Yidong <cyd@stupidchicken.com>
4819
4820 * font.c (font_clear_cache): Fix format of font cache data.
4821
e2cbc401
CY
48222008-12-15 Chong Yidong <cyd@stupidchicken.com>
4823
4824 * xftfont.c (xftfont_open): Free Xft font pattern if
4825 XftFontOpenPattern fails.
4826
4827 * xterm.c (x_free_frame_resources): Remove extraneous call to
4828 free_frame_faces.
4829
b131d535
CY
48302008-12-13 Chong Yidong <cyd@stupidchicken.com>
4831
4832 * xterm.c (x_delete_display): Move xim_close_dpy call to
4833 x_delete_terminal.
4834 (x_delete_terminal): Call xim_close_dpy.
4835
e6df5336
JR
48362008-12-13 Jason Rumney <jasonr@gnu.org>
4837
4838 * w32font.c (intern_font_name): New function.
4839 (add_font_name_to_list, w32_enumfont_pattern_entity): Use it.
4840 (w32font_open_internal, Fx_select_font): Decode font name.
4841 (fill_in_logfont, list_all_matching_fonts): Encode font name.
4842
4843 * w32font.h (intern_font_name): Declare new function.
4844
4845 * w32uniscribe.c (add_opentype_font_name_to_list):
4846 Use intern_font_name.
4847
20d68145
CY
48482008-12-13 Chong Yidong <cyd@stupidchicken.com>
4849
9f2554de
CY
4850 * frame.c (Fdelete_frame): Call free_font_driver_list.
4851
3d9bec9a
CY
4852 * font.c (free_font_driver_list): Implement missing function.
4853
20d68145
CY
4854 * w32term.c (w32_term_init): Don't initialize the image cache
4855 here; it will be done in init_frame_faces.
4856
4857 * xterm.h (struct xim_inst_t): Definition moved from xterm.c.
4858 (struct x_display_info): Remove unused member null_pixel. New
4859 member xim_callback_data.
4860
4861 * xterm.c (struct xim_inst_t): Definition moved to xterm.h.
4862 (xim_initialize): Save pointer to callback function data.
4863 (xim_close_dpy): Free callback function data. Call XCloseIM,
4864 reverting 2008-11-04 change by David Smith.
4865 (x_term_init): Don't initialize the image cache here; it will be
4866 done in init_frame_faces. Remove ancient "null_pixel" cruft.
4867 (x_delete_display): Free x_dnd_atoms member.
4868
96f9306b
KH
48692008-12-13 Kenichi Handa <handa@m17n.org>
4870
6dec9044
JB
4871 * font.c (font_rescale_ratio): Moved from xfaces.c.
4872 Argument type changed. Handle a font-spec too.
96f9306b 4873 (font_score): Check Vface_font_rescale_alist.
6dec9044 4874 (font_open_entity): Likewise. (Bug#1547)
96f9306b
KH
4875
4876 * xfaces.c (font_rescale_ratio): Moved to font.c.
4877
8d5b4964
CY
48782008-12-13 Chong Yidong <cyd@stupidchicken.com>
4879
4880 * xfns.c (Fx_wm_set_size_hint): Check if the frame is an X frame.
4881
e6df5336
JR
48822008-12-12 Jason Rumney <jasonr@gnu.org>
4883
4884 * w32fns.c (x_display_info_for_name, Fx_open_connection): Set
4885 Vwindow_system_version to the real w32 major version.
4886
97c6058a
DN
48872008-12-12 Dan Nicolaescu <dann@ics.uci.edu>
4888
4889 * term.c (init_tty): Move setting the terminal name before the
4890 potential user: maybe_fatal.
4891
ec4e88d7
CY
48922008-12-11 Chong Yidong <cyd@stupidchicken.com>
4893
d4835507
JB
4894 * term.c (tty_free_frame_resources): Renamed from delete_tty_output;
4895 all callers changed. Call free_frame_faces to free the face cache.
ec4e88d7 4896
b4233ec9
JR
48972008-12-11 Jason Rumney <jasonr@gnu.org>
4898
8ec71e23 4899 * w32font.c (fill_in_logfont): Don't assume symbol script means
9acef61c 4900 SYMBOL_CHARSET. (Bug#547)
8ec71e23 4901
b4233ec9 4902 * w32uniscribe.c (uniscribe_encode_char): Increase glyph buffer
9acef61c 4903 size for surrogates. (Bug#1096, bug#872)
b4233ec9 4904
011a0143
JB
49052008-12-11 Juanma Barranquero <lekktu@gmail.com>
4906
4907 * w32proc.c (Fw32_get_locale_info): Decode long form of locale name.
4908
3c309f34
JB
49092008-12-11 Juanma Barranquero <lekktu@gmail.com>
4910
4911 * process.c (Fsystem_process_attributes, syms_of_process):
4912 Fix typo in name of Ssystem_process_attributes.
4913 Reported by Ulrich Mueller <ulm@kph.uni-mainz.de>.
4914
fedc6ab5
JB
49152008-12-11 Juanma Barranquero <lekktu@gmail.com>
4916
4917 * syntax.c (Fmodify_syntax_entry): Doc fix.
4918
ba3de0e8
JB
49192008-12-10 Juanma Barranquero <lekktu@gmail.com>
4920
4921 * font.c (Ffont_spec): Move usage to end of docstring.
4922
174f1c74
JR
49232008-12-10 Jason Rumney <jasonr@gnu.org>
4924
4925 * w32font.c (Qcham): New symbol.
4926 (font_supported_scripts): Add cham, and comments for other new
4927 scripts in bitfield from OpenType spec.
9d32f818
JR
4928 (add_font_entity_to_list): Limit unicode-sip fonts to those that
4929 contain characters beyond the bmp.
174f1c74 4930
7b649478
KH
49312008-12-10 Kenichi Handa <handa@m17n.org>
4932
4933 * ftfont.c (fc_charset_table): Add "unicode-sip".
2ae37cf0 4934 (ftfont_spec_pattern): Lookup fc_charset_table for the registry
7b649478
KH
4935 Qunicode_sip.
4936
2133e2d1
JB
49372008-12-10 Juanma Barranquero <lekktu@gmail.com>
4938
4939 * coding.c (QCdefault_char): Rename from QCdefalut_char.
4940 (Fcoding_system_put): Use QCdefault_char.
4941 (syms_of_coding): Set QCdefault_char, not QCdefalut_char.
4942
9af886ee
CY
49432008-12-09 Chong Yidong <cyd@stupidchicken.com>
4944
74d819eb
CY
4945 * xftfont.c (syms_of_xftfont): Fix typo.
4946
4ccfa1c0 4947 * buffer.c (Fbuffer_swap_text): Signal error if swapping a dead buffer.
9af886ee 4948
7c19d3ae
DN
49492008-12-08 Dan Nicolaescu <dann@ics.uci.edu>
4950
4951 * emacs.c (main): Close daemon_pipe on exec.
4952
567826bb
CY
49532008-12-08 Chong Yidong <cyd@stupidchicken.com>
4954
4955 * termchar.h (struct tty): New members termcap_term_buffer and
4956 termcap_strings_buffer.
4957
4958 * term.c (encode_terminal_code): Free any previous memory blocks
4ccfa1c0 4959 before calling xmalloc for encode_terminal_src or encode_terminal_dst.
567826bb
CY
4960 (maybe_fatal): Buffer argument deleted. Don't free buffer here.
4961 All callers changed.
4962 (init_tty): Store termcap data and string buffers in new struct
4963 tty members termcap_term_buffer and termcap_strings_buffer.
4964 (delete_tty): Free them.
4ccfa1c0 4965 (syms_of_term): Initialize encode_terminal_src and encode_terminal_dst.
567826bb 4966
aa96c42b
SZ
49672008-12-07 Seiji Zenitani <zenitani@mac.com>
4968
4969 * nsfns.m (ns_set_background_color): Remove code duplication.
4ccfa1c0 4970 It was a substitute for face-transparency on OS X 10.3.
aa96c42b 4971
b7e1d896
CY
49722008-12-06 Chong Yidong <cyd@stupidchicken.com>
4973
4974 * coding.c (make_conversion_work_buffer): Disable buffer
4975 modification hooks in the work buffer.
4976
b5ec91a5
EZ
49772008-12-05 Eli Zaretskii <eliz@gnu.org>
4978
4979 * process.c (procfs_system_process_attributes): If `nread' has a
4980 negative value, assign zero to it.
4981
a5d2a52b
CY
49822008-12-05 Chong Yidong <cyd@stupidchicken.com>
4983
68c5540b 4984 * eval.c (Vdebug_on_error): Doc fix.
a5d2a52b 4985
7bf1bb21
KH
49862008-12-05 Kenichi Handa <handa@m17n.org>
4987
4988 * ftfont.c (ftfont_shape_by_flt): Use "combining" flt if the
4989 second character is a combining character.
4990
2fdc7d00
EZ
49912008-12-05 Eli Zaretskii <eliz@gnu.org>
4992
4993 * process.c (procfs_system_process_attributes): Don't use cmd,
4994 cmdsize, and q without initializing them first.
4995
bf6bfba8
JR
49962008-12-04 Jason Rumney <jasonr@gnu.org>
4997
4998 * w32font.c (w32font_draw): Initialize orig_clip before getting
4999 it, and delete it when finished.
5000
a3b1a468
DN
50012008-12-04 Dan Nicolaescu <dann@ics.uci.edu>
5002
5003 * keyboard.c (kbd_buffer_get_event): Follow the non-interactive
5004 case when running as a daemon before detaching.
5005
8b8be8eb
JB
50062008-12-03 Juanma Barranquero <lekktu@gmail.com>
5007
805f2638 5008 * w32.c (init_environment): Don't unload library shell32.dll.
8b8be8eb 5009
b1bde622
KH
50102008-12-03 Kenichi Handa <handa@m17n.org>
5011
e500c47d
KH
5012 * font.c (font_at): Set `multibyte' at first.
5013
ca516334
KH
5014 * coding.c (decode_coding_charset): Check type of an element of
5015 vector VALIDS.
7bf1bb21 5016 (encode_coding_emacs_mule): Be sure to set `code'.
ca516334 5017
4ccfa1c0 5018 * fontset.c (face_for_char): Handle invalid charset property correctly.
b1bde622
KH
5019 (font_for_char): Likewise.
5020
1e5ecd37
CY
50212008-12-03 Chong Yidong <cyd@stupidchicken.com>
5022
d5b01609 5023 * font.c (Fopen_font): Compute pixel size correctly.
ba207571
CY
5024 (font_update_lface): Handle fonts with corrupted size specs,
5025 i.e. non-int and non-float.
d5b01609 5026
11e3a6e4 5027 * ftfont.c (ftfont_match): Initialize entity variable.
9a48c8cb 5028 (ftfont_resolve_generic_family): Avoid using uninitialized var.
8adb3a3b 5029 (ftfont_list_family): Initialize list var earlier.
11e3a6e4 5030
ab06788b
CY
5031 * xselect.c (Fx_get_cut_buffer_internal): Fix memory leak.
5032
1e5ecd37 5033 * xterm.c (x_draw_glyph_string): Fall back on
0cff82ab 5034 underline_minimum_offset for underline position.
1e5ecd37 5035
63c125ab
DN
50362008-12-03 Dan Nicolaescu <dann@ics.uci.edu>
5037
5038 * keyboard.c (read_char_help_form_unwind): Specify the type for ARG.
5039
5040 * character.c (c_string_width): Specify the type for LEN.
5041
3a8406e1
KH
50422008-12-03 Kenichi Handa <handa@m17n.org>
5043
4ccfa1c0 5044 * coding.c (decode_coding_utf_16): Initialize consumed_chars_base to 0.
453b38f0 5045 (decode_coding_utf_8): Likewise.
4ccfa1c0 5046 (detect_coding_system): Initialize utf_16_le_eol to -1, val to Qnil.
4533845d 5047 (produce_chars): Initialize consumed_chars to 0.
3a8406e1 5048
651df7d9
CY
50492008-12-02 Chong Yidong <cyd@stupidchicken.com>
5050
5051 * keyboard.c (make_lispy_position): Only use PT if the selected
5052 window is current.
5053
1f625c6c
AS
50542008-12-02 Andreas Schwab <schwab@suse.de>
5055
f7741ce9
AS
5056 * font.c (font_unparse_fcname): Fix use of uninitialized variable.
5057
1f625c6c
AS
5058 * doprnt.c (doprnt1): Fix size of charbuf.
5059
92bc2678
CY
50602008-12-02 Chong Yidong <cyd@stupidchicken.com>
5061
5062 * keyboard.c (timer_check): Revert last change.
5063
93b9e8cc
JB
50642008-12-02 Juanma Barranquero <lekktu@gmail.com>
5065
5066 * makefile.w32-in ($(BLD)/w32console.$(O)): Fix silly, silly typo.
5067
fd7a37d5
JB
50682008-12-01 Juanma Barranquero <lekktu@gmail.com>
5069
5070 * makefile.w32-in: Update dependencies.
5071 (CONFIG_H): Add $(EMACS_ROOT)/nt/inc/sys/time.h.
5072
c115043b
AS
50732008-12-01 Andreas Schwab <schwab@suse.de>
5074
5075 * font.c (register_font_driver): Use xmalloc.
5076 (font_put_frame_data): Likewise.
5077
f5668d2a
CY
50782008-12-01 Chong Yidong <cyd@stupidchicken.com>
5079
860d96be
CY
5080 * xfaces.c (realize_x_face): Make abort condition clearer.
5081
f5668d2a
CY
5082 * gtkutil.c (update_frame_tool_bar): Initialize variable.
5083
379c17e7
CY
50842008-11-30 Chong Yidong <cyd@stupidchicken.com>
5085
5086 * keyboard.c (timer_check): After a timer runs, ensure that the
5087 selected window's buffer is current.
5088
35f36d65
JB
50892008-11-30 Juanma Barranquero <lekktu@gmail.com>
5090
f952c61c
JB
5091 * makefile.w32-in ($(BLD)/abbrev.$(O)): Remove.
5092 It was accidentally restored by the Unicode merge.
5093
35f36d65
JB
5094 * w32proc.c (Fw32_get_locale_info): Fix typo in docstring.
5095
b23077df
JB
50962008-11-29 Juanma Barranquero <lekktu@gmail.com>
5097
5098 * w32proc.c: Include "coding.h".
5099 (Fw32_short_file_name): Encode filename passed to Windows API.
5100 (Fw32_long_file_name): Encode filename passed to Windows API and
5101 decode back the result. (Bug#1433)
5102
b8ebe9dd
KH
51032008-11-29 Kenichi Handa <handa@m17n.org>
5104
8cc53f96
KH
5105 * charset.h (CHAR_CHARSET_P): Check if the encoder is loaded or
5106 not before accessing it.
5107
b8ebe9dd
KH
5108 * charset.c (Fdefine_charset_internal): After calculating
5109 min_char, max_char, and fastmap, copy the charset structure again.
5110 (encode_char): Fix the previous change.
5111
59bc82c0
SZ
51122008-11-28 Seiji Zenitani <zenitani@mac.com>
5113
5114 * frame.c (x_set_alpha) [NS_IMPL_COCOA]: Call x_set_frame_alpha.
5115
5116 * nsfns.m (ns_frame_parm_handlers): Set alpha handler.
5117
5118 * nsterm.m (x_set_frame_alpha): New function.
5119
32247e3d
EZ
51202008-11-27 Eli Zaretskii <eliz@gnu.org>
5121
5122 * xfaces.c (Fx_font_family_list, syms_of_xfaces): Fix last change.
5123
b003e5ff
JB
51242008-11-27 Juanma Barranquero <lekktu@gmail.com>
5125
5126 * w32font.c (add_font_entity_to_list): Pass the right LOGFONT
5127 pointer to check_face_name.
5128
708550f5
KH
51292008-11-27 Kenichi Handa <handa@m17n.org>
5130
5131 * category.h (SET_CATEGORY_SET): Call set_category_set.
5132 (set_category_set): Extern it.
5133
5134 * category.c (hash_get_category_set): New function.
5135 (Fmodify_category_entry): Adjusted for the change of
5136 char_table_ref_and_range. Call hash_get_category_set to get a
5137 category set to store in the table.
5138
5139 * character.h (MAYBE_UNIFY_CHAR): Call maybe_unify_char instead of
5140 Funify_charset.
5141
2ae37cf0 5142 * charset.h (enum charset_method): Delete CHARSET_METHOD_MAP_DEFERRED.
708550f5
KH
5143 (DECODE_CHAR): Check if the decoder vector is ready.
5144 (ENCODE_CHAR): Check if the encoder char-table is ready.
5145 (maybe_unify_char): Extern it.
5146
5147 * charset.c (Vchar_unified_charset_table): Delete it.
5148 (inhibit_load_charset_map): New variable.
5149 (temp_charset_work): New variable.
5150 (SET_TEMP_CHARSET_WORK_ENCODER, GET_TEMP_CHARSET_WORK_ENCODER)
5151 (SET_TEMP_CHARSET_WORK_DECODER, GET_TEMP_CHARSET_WORK_DECODER):
5152 New macros.
5153 (load_charset_map): Meaning of control_flag changed. If
5154 inhibit_load_charset_map is nonzero, setup a table in
5155 temp_charset_work.
5156 (load_charset): New argument control_flag.
5157 (map_charset_for_dump): New function.
5158 (map_charset_chars): If inhibit_load_charset_map is nonzero, use
5159 map_charset_for_dump.
5160 (Fdefine_charset_internal): If the charset method is MAP, load
5161 mapping tables by calling load_charset.
5162 (Funify_charset): Don't load a mapping table but directly set
5163 Vchar_unify_table.
5164 (maybe_unify_char): New function.
5165 (decode_char): Don't handle the deleted method MAP_DEFERRED.
5166 Handle the case of inhibit_load_charset_map being nonzero.
5167 (encode_char): Don't handle the deleted method MAP_DEFERRED.
5168 Handle the case of inhibit_load_charset_map being nonzero.
5169 (Fclear_charset_maps): Just free temp_charset_work.
5170 (syms_of_charset): Make `inhibit-load-charset-map' a Lisp
5171 variable.
5172
5173 * chartab.c (sub_char_table_ref_and_range): Adjusted for the
5174 change of char_table_ref_and_range.
5175 (char_table_ref_and_range): Change the meaning of argument FROM
5176 and TO. Now the caller must provide initial values for *FROM
5177 and *TO.
5178
5179 * fontset.c (fontset_add): Adjusted for the change of
5180 char_table_ref_and_range.
5181 (fontset_get_font_group): Likewise.
5182 (Ffontset_info): Likewise.
5183
5184 * keymap.c (describe_vector): Adjusted for the change of
5185 char_table_ref_and_range. For char-table, put boundary between
5186 non-ASCII and 8-bit characters.
5187
5188 * print.c (print_object): For bool-vector, delete unnecessary
5189 check of ASCII_BYTE_P.
5190
9196133b
JR
51912008-11-26 Jason Rumney <jasonr@gnu.org>
5192
5193 * w32font.c (w32font_open_internal): Don't include external
9acef61c 5194 leading in font height. (Bug#879)
9196133b 5195
9f688acf
GM
51962008-11-26 Glenn Morris <rgm@gnu.org>
5197
5198 * xfaces.c (Fx_font_family_list): Replace lisp/term/pc-win.el
5199 redefinition with ifdef. (Bug#1383)
5200
90d19aff
AR
52012008-11-24 Adrian Robert <Adrian.B.Robert@gmail.com>
5202
5203 * nsterm.m (ns_get_color): Handle long hex strings (fixes bug #1044).
5204
4ccfa1c0 52052008-11-24 Wolfgang Lux <wolfgang.lux@gmail.com> (tiny change)
90d19aff
AR
5206
5207 * nsterm.m (-otherMouseDown:, -otherMouseUp:, -otherMouseDragged):
5208 New EmacsView methods.
5209 (EV_UDMODIFIERS, EV_BUTTON): Add OtherMouse constants.
5210 Fixes bug #1048,1357,1414.
5211
52122008-11-24 Adrian Robert <Adrian.B.Robert@gmail.com>
5213
5214 Fix bug #1362.
5215 * image.c (x_clear_image_1): Do not free background under HAVE_NS, it
5216 is not an indexed color.
5217 * nsterm.m (free_indexed_color): Add argument checking.
5218 * nsfns.m: Move config.h to before system includes (advised by Dan N.).
5219
e7d5ecb3
CY
52202008-11-24 Chong Yidong <cyd@stupidchicken.com>
5221
5222 * minibuf.c (Fcompleting_read, Vminibuffer_completion_confirm):
5223 Document confirm-after-completion value for
5224 minibuffer-completion-confirm.
5225
c285743c
JR
52262008-11-24 Jason Rumney <jasonr@gnu.org>
5227
5228 * w32font.c (check_face_name): Use xstrcasecmp. Avoid compiler
5229 warning.
5230
b0857706
JR
52312008-11-23 Jason Rumney <jasonr@gnu.org>
5232
5233 * w32uniscribe.c (uniscribe_encode_char): Ensure context is
5234 restored before returning.
5235
5236 * w32font.c (check_face_name): New function.
5237 (add_font_entity_to_list): Use it to filter out common substituted
9acef61c 5238 fonts. (Bug#642)
b0857706 5239
ee50ff07
MR
52402008-11-22 Martin Rudalics <rudalics@gmx.at>
5241
5242 * buffer.c (Fswitch_to_buffer): Reword and mention new option
5243 confirm-nonexistent-file-or-buffer in doc-string.
5244
b8ff72fa
SM
52452008-11-21 Stefan Monnier <monnier@iro.umontreal.ca>
5246
5247 * buffer.c (Fbuffer_swap_text): Remove redundant marker manipulation.
5248 Fix copy/paste typo. Add checks.
5249
cee53ed4
KH
52502008-11-21 Kenichi Handa <handa@m17n.org>
5251
5252 * coding.c (detect_coding_iso_2022): Reject invalid composition
5253 sequence.
5254 (DECODE_COMPOSITION_START): If the current source is the last
5255 block, and the current composition doesn't end, regard this
5256 sequence as invalid.
5257 (decode_coding_iso_2022): Handle invalid composition sequence.
5258
f6ef1e65
MR
52592008-11-20 Martin Rudalics <rudalics@gmx.at>
5260
5261 * window.c (coordinates_in_window): Don't return
5262 ON_VERTICAL_BORDER for the rightmost position of a mode/header
5263 line when the window is not the rightmost one. (Bug#1372)
5264
e08b1705
MR
52652008-11-16 Ben North <ben@redfrontdoor.org> (tiny change)
5266
5267 * buffer.c (syms_of_buffer): Fix doc-string of cursor-type.
5268
ad98e89f
EZ
52692008-11-15 Eli Zaretskii <eliz@gnu.org>
5270
5271 * msdos.c (run_msdos_command): Don't call dos_ttcooked, dos_ttraw,
5272 and bright_bg if noninteractive is non-zero.
5273
fb098a4b
CY
52742008-11-15 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
5275
5276 * xterm.c (x_draw_glyph_string): For stretch glyphs, don't call
5277 x_draw_glyph_string_background.
5278
5279 * w32term.c (x_draw_glyph_string): Likewise.
5280
ce952b6e
CY
52812008-11-15 Chong Yidong <cyd@stupidchicken.com>
5282
5283 * xterm.c (x_draw_glyph_string): Stop drawing the background of
5284 the next glyph string once past the overhang width.
5285
5286 * nsterm.m (ns_draw_glyph_string): Likewise.
5287
5288 * w32term.c (x_draw_glyph_string): Likewise.
5289
26ea7079
CY
52902008-11-14 Fabrice Popineau <fabrice.popineau@supelec.fr> (tiny change)
5291
5292 * fileio.c (Finsert_file_contents): Decrement specpdl_ptr to avoid
5293 double file close.
5294
1c33c906
MR
52952008-11-14 Martin Rudalics <rudalics@gmx.at>
5296
5297 * window.c (window_loop): In DELETE_BUFFER_WINDOWS case, reset
5298 dedicated status of window before attempting to display another
5299 buffer in it.
5300
8fc29035
JB
53012008-11-14 Juanma Barranquero <lekktu@gmail.com>
5302
5303 * msdos.c (Fmsdos_long_file_names):
5304 (syms_of_msdos) <dos-unsupported-char-glyph>:
5305 * dosfns.c (Fint86): Fix typos in docstrings.
5306
55fb4286
EZ
53072008-11-14 Eli Zaretskii <eliz@gnu.org>
5308
5309 * makefile.w32-in (OBJ1, WIN32OBJ): Fix whitespace.
5310
3fda0315
KY
53112008-11-14 Katsumi Yamaoka <yamaoka@jpl.org>
5312
5313 * puresize.h (BASE_PURESIZE): Increase to 1260000.
5314
7e849c17
CY
53152008-11-12 Michal Nazarewicz <mina86@tlen.pl> (tiny change)
5316
5317 * frame.c (x_set_alpha): Set alpha to -1 if nil given.
5318
5319 * frame.h: Negative alpha means "don't touch".
5320
5321 * w32term.c (x_set_frame_alpha): Do nothing if alpha is negative.
5322
5323 * xterm.c (x_set_frame_alpha): Do nothing if alpha is negative.
5324
b9fd67bd
DN
53252008-11-12 Dan Nicolaescu <dann@ics.uci.edu>
5326
5327 * hftctl.c:
5328 * chpdef.h:
5329 * acldef.h: Remove files used only for systems no longer supported.
5330
5331 * Makefile.in: Fix .o alphabetical ordering.
5332 (hftctl.o): Remove dependency, file removed.
5333 (keymap.o, print.o): Depend on charset.h.
5334
d5998e03
KH
53352008-11-10 Kenichi Handa <handa@m17n.org>
5336
2ae37cf0 5337 * character.c (Fget_byte): Fix and make it faster for unibyte target.
d5998e03 5338
be70e183
CY
53392008-11-08 Chong Yidong <cyd@stupidchicken.com>
5340
5341 * dired.c (file_name_completion): If completion_ignore_case is
5342 enabled, ignore case when checking completion-regexp-list.
5343
7cf94eac
EZ
53442008-11-08 Eli Zaretskii <eliz@gnu.org>
5345
5346 * vm-limit.c (get_lim_data): Fix last change.
5347
ee107a89
KH
53482008-11-08 Kenichi Handa <handa@m17n.org>
5349
5350 * character.c (Fget_byte): New function.
5351 (syms_of_character): Defsubr Fget_byte.
5352
5fd15622
CY
53532008-11-07 Chong Yidong <cyd@stupidchicken.com>
5354
5355 * xdisp.c (try_window_reusing_current_matrix): Ensure that window
5356 cursor position is valid after scrolling.
5357
13d62fad
JB
53582008-11-06 Juanma Barranquero <lekktu@gmail.com>
5359
5360 * fns.c (Frandom): Rename arg N to LIMIT to match the docs; doc fix.
5361
a1dd2936
GM
53622008-11-06 Glenn Morris <rgm@gnu.org>
5363
5364 * xterm.c (handle_one_xevent): Don't let popup menus cause
5365 mouse-autoselect-window related window switching. (Bug#1261)
5366
860cd236
CY
53672008-11-04 David Smith <davidsmith@acm.org> (tiny change)
5368
5369 * xterm.c (xim_close_dpy): Avoid double-free on X11R6 XIM.
5370
653a3150
AS
53712008-11-04 Andreas Schwab <schwab@suse.de>
5372
5373 * xfns.c (Fx_wm_set_size_hint): Add missing return value.
5374
870f5cac
CY
53752008-11-03 Chong Yidong <cyd@stupidchicken.com>
5376
5377 * xfns.c (Fx_wm_set_size_hint): New function.
5378
1e02f3cb
MR
53792008-11-03 Martin Rudalics <rudalics@gmx.at>
5380
5381 * textprop.c (Fprevious_single_char_property_change): Return 0
5382 when there's no change in a string. (Bug#1301)
5383
e630dfc6
MR
53842008-11-02 Martin Rudalics <rudalics@gmx.at>
5385
5386 * frame.c (do_switch_frame): New argument NORECORD passed to
5387 Fselect_window.
5388 (Fselect_frame): New argument NORECORD passed to
5389 do_switch_frame.
5390 (Fset_frame_selected_window): New argument NORECORD passed to
5391 Fselect_frame.
5392 (Fhandle_switch_frame, Fdelete_frame): Handle NORECORD argument
5393 in call of do_switch_frame.
5394 (Fset_mouse_position, Fset_mouse_pixel_position, Fraise_frame):
5395 Handle NORECORD argument in call of Fselect_frame.
5396 * lisp.h (do_switch_frame, Fselect_frame)
5397 (Fset_frame_selected_window): Adjust declarations.
5398 * window.c (select_frame_norecord): New function.
5399 (run_window_configuration_change_hook): Use it and call
5400 Fselect_frame with NORECORD set.
5401 (Fselect_window): Pass NORECORD to Fselect_frame.
5402 (Fset_window_configuration): Handle NORECORD argument in call of
5403 do_switch_frame.
5404 * minibuf.c (choose_minibuf_frame): Handle NORECORD in call of
5405 Fset_frame_selected_window.
5406 * keyboard.c (command_loop_1): Handle NORECORD in call of
5407 Fselect_frame (currently ifdefd).
5408
9020b223
GM
54092008-11-02 Ulrich Mueller <ulm@kph.uni-mainz.de>
5410
5411 * emacs.c (USAGE2): Untabify.
5412
793ffee8
SM
54132008-11-01 Stefan Monnier <monnier@iro.umontreal.ca>
5414
5415 * composite.c (fill_gstring_header): Fix copy/paste typo.
5416
ab6d1131
MR
54172008-10-31 Martin Rudalics <rudalics@gmx.at>
5418
5419 * window.c (Fnext_window, Fprevious_window): Rewrite doc-string.
5420 (Fother_window): Rename argument and rewrite doc-string.
5421 (select_window_norecord): Fix return value. (Bug#1276)
5422
601a9cf1
JB
54232008-10-30 Juanma Barranquero <lekktu@gmail.com>
5424
5425 * w32fns.c (x_create_tip_frame): Prevent default foreground color for
5426 new frames overriding foreground for tooltips. Based on similar patch
5427 from Martin Rudalics <rudalics@gmx.at>. (Bug#1032)
5428
813b0652
CY
54292008-10-29 Chong Yidong <cyd@stupidchicken.com>
5430
5431 * emacs.c (Fdaemon_initialized): Initialize nfd.
5432
4414f58f
MR
54332008-10-29 Martin Rudalics <rudalics@gmx.at>
5434
5435 * window.c (Fwindow_height, Fdelete_window, set_window_buffer)
5436 (Fwindow_text_height): Clarify doc-strings.
5437 * xdisp.c (syms_of_xdisp): Mention set-window-buffer in
5438 doc-string of window-scroll-functions.
5439
ecdcaa09
RS
54402008-10-28 Reiner Steib <Reiner.Steib@gmx.de>
5441
5442 * category.c (syms_of_category): Fix typo in docstring.
5443
23fe745a
JB
54442008-10-28 Juanma Barranquero <lekktu@gmail.com>
5445
5446 * window.c (Fwindowp, Fwindow_live_p, Fwindow_minibuffer_p)
5447 (Fcoordinates_in_window_p, Fscroll_left, Fscroll_right):
5448 Fix typos in docstrings.
5449
ff808935
DN
54502008-10-28 Dan Nicolaescu <dann@ics.uci.edu>
5451
5452 * emacs.c (daemon_pipe): Make non-static.
5453 (IS_DAEMON): Move definition ...
5454 * lisp.h (IS_DAEMON): ... here.
5455 (daemon_pipe): Declare.
5456 (is_daemon): Remove.
5457 * dispnew.c (init_display): Use IS_DAEMON.
5458
fc012771
SM
54592008-10-28 Stefan Monnier <monnier@iro.umontreal.ca>
5460
5461 * xdisp.c (pos_visible_p, redisplay_internal, message3_nolog)
5462 (message2_nolog): Check FRAME_INITIAL_P instead of noninteractively.
5463
5464 * emacs.c (is_daemon): Remove.
5465 (main): Don't set is_daemon.
5466 (IS_DAEMON): New macro.
5467 (Fdaemonp, Fdaemon_initialized): Use it.
601a9cf1 5468 (Fdaemon_initialized): Write a char into the pipe to make sure the
fc012771
SM
5469 parent exits.
5470 (syms_of_emacs): Explicitly initialize daemon_pipe[1].
5471
d8bdbe6f
CY
54722008-10-27 Chong Yidong <cyd@stupidchicken.com>
5473
d1a072bf
CY
5474 * nsterm.m (ns_draw_window_cursor): When hbar cursor is on
5475 over-sized glyph, draw it with the default glyph width.
5476
e2e325aa
CY
5477 * w32term.c (x_draw_bar_cursor): When hbar cursor is on over-sized
5478 glyph, draw it with the default glyph width.
5479
5480 * xterm.c (x_draw_bar_cursor): When hbar cursor is on over-sized
5481 glyph, draw it with the default glyph width.
5482
d8bdbe6f
CY
5483 * xdisp.c (try_scrolling): When computing the distance from the
5484 scroll margin to PT, try moving some distance past the window
5485 bottom before giving up.
5486
7bfac547
MR
54872008-10-27 Martin Rudalics <rudalics@gmx.at>
5488
5489 * window.c (Fwindow_dedicated_p, Fset_window_dedicated_p)
5490 (Fset_window_buffer): Explain in doc-string that a window can be
5491 "strongly" dedicated to its buffer.
5492
4ff029f6
DN
54932008-10-27 Dan Nicolaescu <dann@ics.uci.edu>
5494
5495 * emacs.c (daemon_name): New variable.
5496 (main): Deal with --daemon=SERVER_NAME.
5497 (Fdaemonp): Return a name if one was passed to --daemon.
5498
5790ef40
DN
54992008-10-26 Romain Francoise <romain@orebokech.com>
5500
f9bd0df9 5501 * emacs.c (daemon_pipe): New variable.
5790ef40
DN
5502 (main): Create a pipe before forking, make the parent exit only after
5503 the child has closed its end of the pipe. Move closing the
5504 descriptors ...
5505 (Fdaemon_initialized): ... here. New function.
5506
f5385255
SM
55072008-10-26 Stefan Monnier <monnier@iro.umontreal.ca>
5508
4d632321
SM
5509 * chartab.c (Foptimize_char_table): Make sure `ascii' doesn't point to
5510 the previous unoptimized table.
5511
f5385255
SM
5512 * window.c (Fset_window_buffer): Undo 2008-10-18 change to re-instate
5513 the distinction between non-nil and non-t value of `dedicated'.
5514
6c56a0f3
CY
55152008-10-25 Chong Yidong <cyd@stupidchicken.com>
5516
5517 * keyboard.c (read_char_minibuf_menu_prompt): Ensure that
f5385255 5518 read_char_minibuf_menu_text is large enough to hold the menu string.
6c56a0f3 5519
fec89261
MR
55202008-10-25 Martin Rudalics <rudalics@gmx.at>
5521
5522 * window.c (Fget_buffer_window, Fdelete_windows_on)
5523 (Freplace_buffer_in_windows): Make buffer argument optional and
5524 rename to buffer_or_name.
5525
34fcddd0
CY
55262008-10-24 Chong Yidong <cyd@stupidchicken.com>
5527
f5385255
SM
5528 * xdisp.c (handle_single_display_spec, handle_display_prop):
5529 Undo 2005-05-16 change.
34fcddd0
CY
5530 (handle_stop): Pop iterator if it's loaded with an empty string.
5531 (get_overlay_strings_1): Don't save iterator if it's loaded with
5532 an empty string (bug#1201).
5533
064766f2
KH
55342008-10-24 Kenichi Handa <handa@m17n.org>
5535
5536 * ftfont.c (ftfont_otf_features): Fix previous change.
5537 (ftfont_otf_capability): Check FeatureList.FeatureCount before
5538 calling ftfont_otf_features.
5539
f9bd0df9 55402008-10-24 Kenichi Handa <handa@m17n.org>
064766f2
KH
5541
5542 * font.c (font_match_p): Fix for the case that a vector of
5543 characters is in script-representative-chars.
5544
1dae9197
MA
55452008-10-24 Michael Albinus <michael.albinus@gmx.de>
5546
5547 * dbusbind.c (xd_in_read_queued_messages): New variable.
f5385255 5548 (XD_SIGNAL1, XD_SIGNAL2, XD_SIGNAL3): New macros. Throw Qdbus_error.
1dae9197
MA
5549 (xd_read_queued_messages): Catch Qdbus_error from the macros.
5550 (all): Replace xsignal1, xsignal2, xsignal3 by the respective
777013f2 5551 macro. (Bug#1186)
1dae9197 5552
f9bd0df9 55532008-10-23 Ali Bahrami <ali_gnu@emvision.com> (tiny change)
9b3362b8
DN
5554
5555 * s/sol2-10.h: New file.
5556
878a4584
JB
55572008-10-23 Juanma Barranquero <lekktu@gmail.com>
5558
5559 * xdisp.c (fill_glyph_string): Fix typo in source (though the
5560 poor beast has survived 9+ years and the jump from xterm.c!).
5561
cd265ca6
MR
55622008-10-23 Martin Rudalics <rudalics@gmx.at>
5563
5564 * buffer.c (Fget_buffer_create): Rename arg to buffer_or_name.
5565 Reword doc-string.
f5385255 5566 (Fbury_buffer): In doc-string say what happens to the buffer's window.
cd265ca6 5567
472a4dc9
JB
55682008-10-23 Juanma Barranquero <lekktu@gmail.com>
5569
5570 * character.c (syms_of_character) <script-representative-chars>:
5571 <unicode-category-table>: Doc fixes.
5572
159bd5a2
NF
55732008-10-23 Noah Friedman <friedman@splode.com>
5574
5575 * coding.c (make_conversion_work_buffer): Check that
5576 Vcode_conversion_reused_workbuf is a live buffer, otherwise call
5577 Fget_buffer_create.
5578
49f9c344
KH
55792008-10-23 Kenichi Handa <handa@m17n.org>
5580
5581 * font.c (font_add_log): Check the values of extra properties.
5582
12bb3111
MR
55832008-10-22 Martin Rudalics <rudalics@gmx.at>
5584
5585 * window.c (Fwindow_dedicated_p, Fset_window_dedicated_p):
5586 Reword doc-string.
5587 (Fset_window_parameter): Use NILP.
5588 (Fscroll_up, Fscroll_down, Fminibuffer_selected_window)
f5385255 5589 (Frecenter): Use "selected" instead of "current" window in doc-strings.
12bb3111 5590
bbeb4e99
JB
55912008-10-22 Juanma Barranquero <lekktu@gmail.com>
5592
5593 * xdisp.c (next_element_from_buffer): Remove bogus xassert condition.
5594
55952008-10-22 Adrian Robert <Adrian.B.Robert@gmail.com>
cb83c00b
AR
5596
5597 * nsfns.m (ns_appkit_version): New function.
5598 (x-server-version): Use it.
5599 (syms_of_nsfns): Define ns-version-string here, not nsterm.m.
5600 (x-server-vendor): Don't check_ns().
5601
5602 * nsterm.m (syms_of_nsterm): Drop ns-version-string.
5603
a9b555d3
JB
56042008-10-22 Juanma Barranquero <lekktu@gmail.com>
5605
5606 * w32fns.c (unwind_create_frame) [!GLYPH_DEBUG]: Fix xassert.
5607 Copied from 2005-02-03 change to xfns.c by Kim F. Storm.
5608
4626499f
KH
56092008-10-22 Kenichi Handa <handa@m17n.org>
5610
e3681952
KH
5611 * syntax.c (scan_words): Call word_boundary_p instead of comparing
5612 scripts.
5613
4626499f
KH
5614 * category.c (word_boundary_p): Check scripts instead of charset.
5615 Handle nil value in word-separating-categories and
5616 word-combining-categories.
5617 (syms_of_category): Fix docstrings of word-separating-categories
5618 and word-combining-categories.
5619
1560f91a
EZ
56202008-10-21 Eli Zaretskii <eliz@gnu.org>
5621
5622 * coding.c (Fencode_coding_region, Fdecode_coding_region)
5623 (Fdecode_coding_string, Fencode_coding_string): Doc fix.
5624
f4668441
MR
56252008-10-21 Martin Rudalics <rudalics@gmx.at>
5626
5627 * buffer.c (Fget_buffer, Fbury_buffer, switch_to_buffer_1):
5628 Rename arg "buffer" to "buffer_or_name".
5629 (Fkill_buffer): Rename arg "buffer" to "buffer_or_name" and make
5630 it optional.
5631 (no_switch_window): Remove since the return value is not used.
a9b555d3 5632 (Fswitch_to_buffer): Rename arg "buffer" to "buffer_or_name".
f4668441
MR
5633 Consider window as dedicated when Fwindow_dedicated_p returns a
5634 non-nil value.
5635 * lisp.h: Remove prototype for no_switch_window.
5636
fd75ddb2
JD
56372008-10-21 Jan Djärv <jan.h.d@swipnet.se>
5638
5639 * emacs.c (main): Unconditionally set PER_LINUX32 and exec
2ae37cf0 5640 temacs when dumping if HAVE_PERSONALITY_LINUX32 is defined.
fd75ddb2 5641
07295713
KH
56422008-10-21 Kenichi Handa <handa@m17n.org>
5643
5644 * coding.c (detect_coding_charset): For iso-8859-* coding systems,
5645 check Vlatin_extra_code_table.
5646
712adc82
EZ
56472008-10-20 Eli Zaretskii <eliz@gnu.org>
5648
5649 * fileio.c (Fset_file_modes): Doc fix.
5650
f549eb0b
MA
56512008-10-19 Michael Albinus <michael.albinus@gmx.de>
5652
5653 * dbusbind.c (XD_OBJECT_TO_DBUS_TYPE): Handle simple type symbols
5654 in arrays.
5655
aac0c6e3
MR
56562008-10-19 Martin Rudalics <rudalics@gmx.at>
5657
5658 * window.c (Fwindow_dedicated_p, Fset_window_dedicated_p):
5659 Mention kill-buffer in doc-string.
5660 (Fset_window_buffer): Reinsert tem check removed in last commit.
5661 (Fenlarge_window, Fshrink_window): Have argument names and
5662 doc-string follow Elisp manual more closely.
5663
56642008-10-18 Eli Zaretskii <eliz@gnu.org>
5665
5666 * fileio.c (Fset_file_modes): Doc fix.
5667
56682008-10-18 Martin Rudalics <rudalics@gmx.at>
5669
5670 * window.c (Fwindow_width, Fset_window_start)
5671 (Fwindow_parameters, Fwindow_parameter, Fset_window_parameter)
f5385255
SM
5672 (Fdelete_windows_on, Freplace_buffer_in_windows):
5673 Make doc-strings follow code and Elisp manual more closely.
aac0c6e3
MR
5674 (Fwindow_dedicated_p): Make window argument optional.
5675 (Fset_window_dedicated_p): Rename argument "arg" to "flag".
5676 (Fset_window_buffer): Respect any non-nil dedicated value for
5677 window. Rename "buffer" argument to "buffer_or_name".
5678
56792008-10-18 Ulrich Mueller <ulm@gentoo.org>
5680
5681 * m/sh3.h: New file, machine description for SuperH.
5682
56832008-10-17 Martin Rudalics <rudalics@gmx.at>
5684
5685 * window.c (Fsplit_window): Rename arg horflag to horizontal.
5686
56872008-10-17 Kenichi Handa <handa@m17n.org>
5688
5689 * ftfont.c (ftfont_otf_features): Fix indexing
5690 gsub_gpos->FeatureList.Feature. Check the validity of indices.
5691
56922008-10-16 Magnus Henoch <mange@freemail.hu>
5693
5694 * dbusbind.c (Fdbus_call_method): Unbreak usage line.
5695 (Fdbus_call_method_asynchronously): Ditto.
5696 This change makes C-h f display the argument list.
5697
56982008-10-16 Chong Yidong <cyd@stupidchicken.com>
5699
5700 * fileio.c (Fexpand_file_name): Doc fix.
5701
5702 * xfaces.c (Finternal_set_lisp_face_attribute): Make null values
5703 of :foreground and :background equivalent to unspecified (20.x
5704 compatibility).
5705
57062008-10-15 Eli Zaretskii <eliz@gnu.org>
5707
5708 * buffer.c (syms_of_buffer): Doc fix.
5709
57102008-10-14 Kenichi Handa <handa@m17n.org>
5711
5712 * font.c (font_clear_prop): When clearing font width, clear the
5713 average width field too.
5714
57152008-10-12 Andreas Schwab <schwab@suse.de>
5716
5717 * ftfont.c (ftfont_shape_by_flt): Make static.
5718 * ftfont.h (ftfont_shape_by_flt): Don't declare.
5719
5720 * font.c: Don't include <m17n-flt.h>.
5721
57222008-10-10 Eli Zaretskii <eliz@gnu.org>
5723
5724 * s/msdos.h (SYSTEM_PURESIZE_EXTRA): Decrease to 10000.
5725
57262008-10-09 Eli Zaretskii <eliz@gnu.org>
5727
5728 * frame.c (make_terminal_frame) [MSDOS]: Remove unused #ifdef'ed
5729 away code.
5730
57312008-10-09 Chong Yidong <cyd@stupidchicken.com>
5732
5733 * dispnew.c (update_text_area): Avoid looping due to large glyph
5734 overhangs (bug#1070).
5735
57362008-10-09 Kenichi Handa <handa@m17n.org>
5737
5738 * fontset.c (face_for_char): If face->fontset is negative, just
5739 return ascii_face.
5740
f5385255
SM
5741 * font.c (font_delete_unmatched): Fix previous change.
5742 Don't reject an entity if DPI and AVGWIDTH of an entity are 0.
aac0c6e3
MR
5743
57442008-10-09 Martin Rudalics <rudalics@gmx.at>
5745
5746 * frame.c (Fraise_frame): On text-only terminals select frame in
5747 order to make it visible. (Bug#1061)
5748
57492008-10-08 Chong Yidong <cyd@stupidchicken.com>
5750
5751 * fontset.c (fontset_find_font): Check frame validity.
5752
57532008-10-07 Chong Yidong <cyd@stupidchicken.com>
5754
a9b555d3 5755 * gtkutil.c (xg_display_open): Reset default display if none exists.
aac0c6e3
MR
5756 (xg_display_close): Allow Emacs to close all displays (bug#985).
5757
57582008-10-06 Andreas Schwab <schwab@suse.de>
5759
f5385255 5760 * sysdep.c (sys_signal): Always set SA_RESTART when noninteractively.
aac0c6e3
MR
5761
57622008-10-06 Chong Yidong <cyd@stupidchicken.com>
5763
f5385255 5764 * emacs.c (Vbefore_init_time, Vafter_init_time): Move from startup.el.
aac0c6e3 5765
a9b555d3 5766 * lisp.h (Vbefore_init_time, Vafter_init_time): Declare.
aac0c6e3
MR
5767
5768 * gtkutil.c (x_wm_set_size_hint): Return immediately if called
5769 during initialization.
5770
57712008-10-04 Eli Zaretskii <eliz@gnu.org>
5772
5773 * xdisp.c (redisplay_internal): If frame switched, redisplay the
5774 whole thing on MSDOS frames as well as on a TTY.
5775
5776 * dispnew.c (update_frame): Flush termscript for MSDOS frames as
5777 well as for TTY.
5778 (Fopen_termscript): Allow opening a termscript on MSDOS frames as
5779 well as on a TTY.
5780
5781 * sysdep.c (init_sys_modes): Set FRAME_GARBAGED_P for MSDOS frames
5782 as well as for TTY.
5783
5784 * systime.h (EMACS_TIME_CMP): Cast EMACS_SECS values to `long'.
5785
5786 * dispnew.c (change_frame_size_1): Set FrameRows and FrameCols for
5787 MSDOS frames as well.
5788
57892008-10-02 Adrian Robert <Adrian.B.Robert@gmail.com>
5790
5791 * image.c (x_clear_image_1): Under NS, call ns_free_indexed_color with
5792 correct arguments.
b71ac3dd 5793 * menu.c (find_and_return_menu_selection): Add cast.
aac0c6e3
MR
5794
57952008-10-03 Glenn Morris <rgm@gnu.org>
5796
5797 * emacs.c (USAGE1): Add --daemon.
5798
57992008-10-02 Eli Zaretskii <eliz@gnu.org>
5800
5801 * process.c (procfs_system_process_attributes): Multiply `pcpu' by
5802 100, so it's in percents as advertised.
5803
58042008-10-02 Adrian Robert <Adrian.B.Robert@gmail.com>
5805
5806 * nsterm.h (ns_cursor_types, ns_output.desired_cursor_color)
5807 (ns_output.current_cursor, ns_output.desired_cursor)
5808 (ns_output.last_inactive, FRAME_CURSOR, FRAME_NEW_CURSOR)
5809 (FRAME_NEW_CURSOR_COLOR): Remove.
5810
5811 * nsfns.m (ns_set_cursor_color): Use FRAME_CURSOR_COLOR.
a9b555d3 5812 (ns_lisp_to_cursor_type, ns_cursor_type_to_lisp): Use core Emacs
aac0c6e3
MR
5813 enumeration (HOLLOW_BOX_CURSOR, etc.).
5814
5815 * nsterm.m (ns_frame_rehighlight): Remove commented code.
5816 (draw_window_cursor): Simplify code.
f5385255
SM
5817 (EmacsView-windowDidBecomeKey:,-windowDidResignKey:):
5818 Don't change cursor type. In latter, call rehighlight instead of doing
aac0c6e3 5819 updates manually.
a9b555d3
JB
5820 (EmacsPrefsController-setPanelFromValues,-setValuesFromPanel):
5821 Use core Emacs cursor types.
aac0c6e3 5822
b8ff72fa 5823 * xdisp.c (draw_glyphs): Don't call notice_overwritten_cursor under NS.
aac0c6e3
MR
5824
58252008-10-02 Martin Rudalics <rudalics@gmx.at>
5826
5827 * process.c (Faccept_process_output): Fix doc-string.
5828
58292008-10-02 Dan Nicolaescu <dann@ics.uci.edu>
5830
5831 * gmalloc.c (__sbrk): Also define for uClibc.
5832
5833 * s/gnu-linux.h (GNU_LIBRARY_PENDING_OUTPUT_COUNT): Add definition
5834 for uClibc.
5835
58362008-10-01 Adrian Robert <Adrian.B.Robert@gmail.com>
5837
5838 * nsfont.m (nsfont_spec_to_traits): Use UnXX masks only for non-normal
5839 styles.
5840 (nsfont_open): Reenable the cache.
5841
58422008-10-01 Adrian Robert <Adrian.B.Robert@gmail.com>
5843
5844 * font.c (font_matching_entity): Reflect ATTRS in font selection.
5845 (font_find_for_lface) [HAVE_NS]: Don't ignore case.
5846
58472008-09-30 Stefan Monnier <monnier@iro.umontreal.ca>
5848
5849 * dispnew.c (Fsend_string_to_terminal): Don't try to send a string to
5850 a suspended terminal.
5851
58522008-09-30 Michael Albinus <michael.albinus@gmx.de>
5853
5854 * dbusbind.c (xd_signature): Use strcat instead of sprintf.
5855
58562008-09-30 Eli Zaretskii <eliz@gnu.org>
5857
5858 * Makefile.in (MSDOS_SUPPORT): Remove ccl.elc and codepage.elc.
5859
58602008-09-30 Chong Yidong <cyd@stupidchicken.com>
5861
5862 * xdisp.c (move_it_to): Don't advance the iterator if the last tab
5863 in a continued line coincides with a line beginning.
5864
58652008-09-29 Adrian Robert <Adrian.B.Robert@gmail.com>
5866
5867 * nsfont.m (nsfont_trait_distance): Fix bug.
5868 (nsfont_list): Return a list rather than a vector (syncs with Handa
5869 changes of 2008-05-14).
5870 (nsfont_open): Improve logging.
5871
58722008-09-29 Andreas Schwab <schwab@suse.de>
5873
5874 * keyboard.c (syms_of_keyboard) <input-decode-map>: Doc fix.
5875
58762008-09-28 Martin Rudalics <rudalics@gmx.at>
5877
5878 * character.c (Fchar_resolve_modifiers): Rewrite Elisp function
5879 name as char-resolve-modifiers.
5880 Reported by: Markus Triska <markus.triska@gmx.at>
5881
58822008-09-28 Dan Nicolaescu <dann@ics.uci.edu>
5883
5884 * dispnew.c (init_display): Return earlier when running as a daemon.
5885
58862008-09-27 Adrian Robert <Adrian.B.Robert@gmail.com>
5887
5888 * nsfont.m (nsfont_draw): Fix up composition rendering (cmp_from, ...).
5889
58902008-09-27 Eli Zaretskii <eliz@gnu.org>
5891
5892 * composite.c (Fcomposition_get_gstring)
5893 (Fcompose_region_internal, Fcompose_string_internal)
5894 (Ffind_composition_internal): Doc fix.
5895 (syms_of_composite) <compose-chars-after-function>: Doc fix.
5896 (syms_of_composite) <auto-composition-function>: Doc fix.
5897 (syms_of_composite) <composition-function-table>: Doc fix.
5898
58992008-09-25 Chong Yidong <cyd@stupidchicken.com>
5900
5901 * search.c (wordify): New argument for lax word-ends.
5902 (Fword_search_forward_lax, Fword_search_backward_lax): New funs.
5903
59042008-09-24 Dan Nicolaescu <dann@ics.uci.edu>
5905
5906 * lisp.h (is_daemon): Declare.
5907 * dispnew.c (init_display): Do not try to initialize the terminal
5908 when running as a daemon.
5909
59102008-09-22 Chong Yidong <cyd@stupidchicken.com>
5911
5912 * nsfns.m (compute_tip_xy): Use x_display_pixel_width and
5913 x_display_pixel_height.
5914
59152008-09-22 Martin Rudalics <rudalics@gmx.at>
5916
5917 * undo.c (record_point): Don't call Fundo_boundary for first
5918 change. (Bug#731)
5919
59202008-09-22 Juanma Barranquero <lekktu@gmail.com>
5921
5922 * emacs.c (Fdaemonp): Doc fix.
5923
59242008-09-22 Dan Nicolaescu <dann@ics.uci.edu>
5925
5926 * emacs.c (main): Place #ifdef in the proper place.
5927
59282008-09-21 Dan Nicolaescu <dann@ics.uci.edu>
5929
5930 * emacs.c (standard_args): Add --daemon.
5931 (main): Disconnect from the terminal when --daemon is passed.
5932 (is_daemon): New variable.
5933 (Fdaemonp): New function.
5934 (syms_of_emacs): Defsubr it.
5935
59362008-09-20 Chong Yidong <cyd@stupidchicken.com>
5937
5938 * xdisp.c (get_next_display_element): Handle string display
5939 correctly when checking for the end of a box run.
5940
59412008-09-20 Glenn Morris <rgm@gnu.org>
5942
5943 * fileio.c (Qdelete_by_moving_to_trash): New Lisp_Object.
5944 (syms_of_fileio): Add Qdelete_by_moving_to_trash.
5945 (Frename_file): Avoid copying to trash if a rename involves
5946 a delete. (Bug#964).
5947
59482008-09-20 Eli Zaretskii <eliz@gnu.org>
5949
5950 * keyboard.c (Fset_quit_char, Fset_input_meta_mode)
5951 (Fset_output_flow_control, Fcurrent_input_mode): Support MSDOS
5952 frames as well as termcap frames.
5953 (handle_interrupt): Remove "#ifndef MSDOS" around the call to
5954 get_named_tty.
5955
59562008-09-19 Eli Zaretskii <eliz@gnu.org>
5957
5958 * process.c (procfs_system_process_attributes): Fix cmdline in
5959 case /proc/PID/cmdline is empty.
5960
5961 * xterm.c (x_wm_set_size_hint): Use x_display_pixel_width and
5962 x_display_pixel_height.
5963
59642008-09-19 Juanma Barranquero <lekktu@gmail.com>
5965
5966 * frame.c (x_fullscreen_adjust): Declare var as Display_Info.
5967
5968 * w32fns.c (Fx_display_pixel_width, Fx_display_pixel_height)
5969 (compute_tip_xy): Use x_display_pixel_width, x_display_pixel_height.
5970
59712008-09-19 Dan Nicolaescu <dann@ics.uci.edu>
5972
5973 * dispextern.h (struct it): Move line_wrap away from the middle of
5974 bitfields. Move voffset in struct iterator_stack_entry after the
5975 bitfields. Move tab_width near after another short.
5976
59772008-09-18 Dan Nicolaescu <dann@ics.uci.edu>
5978
5979 * frame.h (struct frame): Move alpha from the middle of bitfields.
5980
5981 * window.h (struct window): Move frozen_window_start_p after the
5982 rest of the bitfields to reduce padding.
5983
59842008-09-18 Chong Yidong <cyd@stupidchicken.com>
5985
5986 * xterm.h (x_display_info): Remove `height' and `width' members.
5987
5988 * nsterm.h (ns_display_info): Remove `height' and `width' members.
5989
5990 * w32term.h (w32_display_info): Remove `height', `width',
5991 `height_in', and `width_in' members.
5992
b8ff72fa
SM
5993 * xterm.c (x_display_pixel_height, x_display_pixel_width):
5994 New functions.
aac0c6e3
MR
5995 (x_calc_absolute_position): Use them.
5996 (x_term_init): Omit removed `height' and `width' members.
5997
b8ff72fa
SM
5998 * w32term.c (x_display_pixel_height, x_display_pixel_width):
5999 New functions.
aac0c6e3
MR
6000 (w32_read_socket, x_calc_absolute_position): Use them.
6001 (w32_initialize_display_info, w32_term_init): Omit removed members
6002 of w32_display_info.
6003
b8ff72fa
SM
6004 * nsterm.m (x_display_pixel_height, x_display_pixel_width):
6005 New functions.
6006 (ns_initialize_display_info): Omit removed members of ns_display_info.
aac0c6e3 6007
b8ff72fa
SM
6008 * xterm.c (x_display_pixel_height, x_display_pixel_width):
6009 New functions.
aac0c6e3
MR
6010 (x_calc_absolute_position): Use them.
6011 (x_term_init): Omit removed `height' and `width' members.
6012
6013 * xfns.c (Fx_display_pixel_width, Fx_display_pixel_height)
b8ff72fa
SM
6014 (compute_tip_xy):
6015 * frame.c (x_fullscreen_adjust):
aac0c6e3
MR
6016 * xmenu.c (menu_position_func): Use x_display_pixel_height and
6017 x_display_pixel_width.
6018
60192008-09-18 Kenichi Handa <handa@m17n.org>
6020
6021 * composite.c (fill_gstring_header): Don't check FROM and TO here.
6022 (composition_compute_stop_pos): Fix handling of static composition.
6023 (Fcomposition_get_gstring): Check FROM and TO at first.
6024
60252008-09-17 Stefan Monnier <monnier@iro.umontreal.ca>
6026
46e722a9 6027 * composite.c (Fcomposition_get_gstring): Yet another int/Lisp_Object
aac0c6e3
MR
6028 mixup (YAILOM).
6029
60302008-09-17 Chong Yidong <cyd@stupidchicken.com>
6031
6032 * indent.c (Fvertical_motion): Use position reported by iterator
6033 instead of PT for determining screen motion (bug#943).
6034
60352008-09-17 Romain Francoise <romain@orebokech.com>
6036
6037 * composite.c (composition_adjust_point): Fix int/EMACS_INT mixup.
6038
60392008-09-17 Kenichi Handa <handa@m17n.org>
6040
6041 * ftfont.c (ftfont_shape_by_flt): Downcase family name.
6042
6043 * composite.c (Fcomposition_get_gstring): Make bigger gstring_work
6044 if necessary.
6045
60462008-09-16 Kenichi Handa <handa@m17n.org>
6047
6048 * coding.c (make_conversion_work_buffer): Avoid calling
6049 Fget_buffer_create if it is not necessary.
6050
60512008-09-15 Martin Rudalics <rudalics@gmx.at>
6052
6053 * window.c (Fselect_window): Don't update window_select_count and
6054 use_time when norecord is not nil.
6055
60562008-09-14 Kenichi Handa <handa@m17n.org>
6057
6058 * fileio.c (Finsert_file_contents): Delete incorrect decrement of
6059 specpdl_ptr.
6060
60612008-09-12 Kenichi Handa <handa@m17n.org>
6062
6063 * indent.c (scan_for_column): Don't handle automatic composition
6064 if the current buffer is not associated with a window.
6065
6066 * composite.c (composition_reseat_it): If the current buffer is
6067 not associated with a window, ignore the automatic composition.
6068 (find_automatic_composition): Likewise.
6069
60702008-09-12 Stefan Monnier <monnier@iro.umontreal.ca>
6071
6072 * term.c (close_gpm): New fun extracted from Fgpm_mouse_stop.
6073 (Fgpm_mouse_stop): Use it.
6074 * termhooks.h (close_gpm): Declare.
6075 * keyboard.c (tty_read_avail_input): Forcefully close the gpm
6076 connection if Gpm_GetEvent fails.
6077
6078 * window.c (set_window_buffer): Always preserve current-buffer.
6079
60802008-09-12 Glenn Morris <rgm@gnu.org>
6081
6082 * charset.c (init_charset): Warn if etc/charsets not found. (Bug#909)
6083
60842008-09-11 Glenn Morris <rgm@gnu.org>
6085
6086 * charset.c (charset-map-path): Doc fix.
6087
60882008-09-10 Kenichi Handa <handa@m17n.org>
6089
6090 * xdisp.c (handle_composition_prop): Set it->cmp_it.ch to -1.
6091
6092 * font.c (Ffont_shape_gstring): Make glyphs of non-nil adjustment
6093 compose a grapheme cluster with the preceding base glyph.
6094
6095 * composite.c (composition_compute_stop_pos): Fix previous change.
6096 Reset cmp_it->id to -1 at first.
6097
60982008-09-10 Glenn Morris <rgm@gnu.org>
6099
6100 * Makefile.in (character.o, chartab.o): Fix config.h typo.
6101
61022008-09-09 Chong Yidong <cyd@stupidchicken.com>
6103
6104 * keyboard.c (read_key_sequence): Reapply translation maps when
6105 switching keyboards.
6106
61072008-09-09 Kenichi Handa <handa@m17n.org>
6108
6109 * ftfont.c (ftfont_shape_by_flt): Use "combining" FLT for ASCII
6110 characters.
6111
6112 * composite.c (FORWARD_CHAR): Fix calculation
6113 of (POSITION).pos_byte.
6114 (composition_compute_stop_pos): Limit the search of composition to
6115 at most 500 characters ahead. If we reach the limit or find a
6116 newline, set cmp_it->ch to -2 and return 0.
6117 (composition_reseat_it): Handle the case that cmp_it->ch is -2.
6118
61192008-09-08 Kenichi Handa <handa@m17n.org>
6120
6121 * indent.c (Fvertical_motion): Be sure to set
6122 it_overshoot_expected if it.cmp_it.id is non-negative.
6123
61242008-09-07 Andreas Schwab <schwab@suse.de>
6125
6126 * callproc.c (Fcall_process): Don't hold references to string data
6127 across garbage collection. Move initialisation of new_argv down
6128 to avoid compiler bug.
6129
61302008-09-07 Roland Winkler <Roland.Winkler@physik.uni-erlangen.de>
6131
6132 * process.c (Fsystem_process_attributes): Doc fix.
6133
61342008-09-07 Chong Yidong <cyd@stupidchicken.com>
6135
6136 * callproc.c (Fcall_process): Canonicalize current directory name.
6137
6138 * xdisp.c (move_it_to): When moving by vpos, ensure that the
6139 iterator advances to the next line if the current line ends in a
6140 continued tab.
6141
61422008-09-07 Teodor Zlatanov <tzz@lifelogs.com>
6143
6144 * nsfont.m (nsfont_draw): Fix the references to missing gidx data
6145 member to point to cmp_from.
6146
6147 * xdisp.c: Doc fix for references to gidx data member.
6148
61492008-09-07 Stefan Monnier <monnier@iro.umontreal.ca>
6150
6151 * buffer.c (Fbuffer_swap_text): Reset window->point markers.
6152
61532008-09-07 Kenichi Handa <handa@m17n.org>
6154
6155 * composite.c (FORWARD_CHAR): Check STOP after
6156 incrementing (POSITION).pos.
6157
61582008-09-06 Roland Winkler <Roland.Winkler@physik.uni-erlangen.de>
6159
6160 * process.c (Fsystem_process_attributes): Doc fix.
6161
61622008-09-06 Chong Yidong <cyd@stupidchicken.com>
6163
6164 * keyboard.c (Ftop_level): Doc fix.
6165
61662008-09-06 Eli Zaretskii <eliz@gnu.org>
6167
6168 * xmenu.c (xmenu_show) [!HAVE_X_WINDOWS]: If frame has a
6169 minibuffer, don't let lower part of menu invade the echo area.
6170
6171 * msdos.c (IT_menu_display): Use STRING_CHAR_ADVANCE instead of a
6172 "char *q" to access menu text and advance through it. Revert the
6173 change that displayed ">" instead of ASCII character 0x10.
6174
61752008-09-05 Eli Zaretskii <eliz@gnu.org>
6176
6177 * menu.c (single_menu_item) [!HAVE_BOXES]: Enable emulation of
6178 toggle boxes and radio buttons on MS-DOS as well.
6179
61802008-09-05 Kenichi Handa <handa@m17n.org>
6181
6182 * composite.c (autocmp_chars): Check lookback count.
6183 (composition_compute_stop_pos): Set cmp_it->lookback.
6184 (composition_reseat_it): Check lookback count.
6185 (struct position_record): New struct.
6186 (FORWARD_CHAR, BACKWARD_CHAR, CHAR_COMPOSABLE_P): New macros.
6187 (find_automatic_composition): New function.
6188 (composition_adjust_point): Use find_automatic_composition.
6189
6190 * dispextern.h (struct composition_it): New member lookback.
6191
61922008-09-02 Chong Yidong <cyd@stupidchicken.com>
6193
6194 * indent.c (Fvertical_motion): Don't call move_it_by_lines again
6195 if moving by a single line.
6196
61972008-09-02 Andreas Schwab <schwab@suse.de>
6198
6199 * xterm.c (x_delete_display): Fix merge error.
6200
6201 * fileio.c (Fexpand_file_name): Remove unused variables.
6202
62032008-09-02 Eli Zaretskii <eliz@gnu.org>
6204
6205 * fileio.c (Fexpand_file_name): Copy argument `name' into local
6206 storage on all platforms, not just on DOS_NT.
6207
62082008-09-02 Jason Rumney <jasonr@gnu.org>
6209
b8ff72fa
SM
6210 * w32menu.c (Fx_popup_menu, Fx_popup_dialog, w32_menu_show):
6211 Ensure mouse is not grabbed after menu is finished.
aac0c6e3
MR
6212
62132008-09-01 Chong Yidong <cyd@stupidchicken.com>
6214
6215 * xfaces.c (Finternal_set_alternative_font_family_alist)
6216 (Finternal_set_alternative_font_registry_alist): Properly copy
6217 entire alist structure.
6218
62192008-09-01 Kenichi Handa <handa@m17n.org>
6220
d66c0241 6221 * ftfont.c (ftfont_spec_pattern): Don't create a charset if the
aac0c6e3 6222 representative chars of the script is a vector.
d66c0241
JB
6223 (ftfont_list): Handle the case where the representative chars of
6224 the script is a vector.
aac0c6e3
MR
6225
6226 * character.c (syms_of_character): Docstring of
6227 script-representative-chars fixed.
6228
62292008-08-31 Eli Zaretskii <eliz@gnu.org>
6230
6231 * msdos.c (BUILD_CHAR_GLYPH): New macro.
6232 (IT_menu_display): Use it instead of SET_CHAR_GLYPH to construct
6233 the menu. Allocate larger buffer for `text', to account for
6234 possible ^C characters.
6235
62362008-08-31 Martin Rudalics <rudalics@gmx.at>
6237
6238 * xdisp.c (prepare_menu_bars): Don't call
6239 Vwindow_size_change_functions with arg Qt.
6240
62412008-08-31 Stefan Monnier <monnier@iro.umontreal.ca>
6242
6243 * font.h (font_range):
6244 * fileio.c (report_file_error):
46e722a9
SM
6245 * composite.c (composition_update_it): Yet another int/Lisp_Object
6246 mixup (YAILOM).
aac0c6e3
MR
6247
62482008-08-30 Glenn Morris <rgm@gnu.org>
6249
6250 * data.c (Fmake_variable_frame_local): Doc fix.
6251
6252 * frame.c (Fmodify_frame_parameters): Doc fix.
6253
62542008-08-30 Eli Zaretskii <eliz@gnu.org>
6255
6256 * w32.c (init_user_info): Allocate buf[] with xmalloc using the size
6257 needed by GetTokenInformation.
6258 (w32_system_process_attributes): Check return values of all system
6259 APIs.
6260
6261 * msdos.c (IT_display_cursor): Write "CURSOR ON/OFF" to termscript
6262 only when the state changes.
6263 (IT_update_begin, IT_update_end): Add termscript trace.
6264
6265 * w16select.c (Fw16_set_clipboard_data): Don't encode text if
6266 clipboard is unavailable. Set dst to NULL if it doesn't point to
6267 malloc'ed data.
6268 (Fw16_get_clipboard_data): Initialize htext to NULL, to avoid
6269 passing random values to xfree.
6270
6271 * dispnew.c (init_display): Set `tty's association in frame's
b8ff72fa 6272 parameters alist to the name of the terminal device, if that is known.
aac0c6e3
MR
6273
62742008-08-29 Jason Rumney <jasonr@gnu.org>
6275
6276 * w32uniscribe.c (uniscribe_check_otf): Don't fallback on DFLT script.
6277
62782008-08-29 Eli Zaretskii <eliz@gnu.org>
6279
6280 * composite.c (fill_gstring_body): Avoid compiler warnings.
6281
6282 * font.c (font_fill_lglyph_metrics): Use EMACS_INT in
6283 LGLYPH_SET_CODE to avoid compiler warnings.
6284
2ae37cf0 6285 * makefile.w32-in ($(BLD)/w32uniscribe.$(O)): Depend on composite.h.
aac0c6e3
MR
6286
6287 * composite.h (LGLYPH_SET_CODE): Cast `val' to EMACS_INT.
6288
6289 * w32uniscribe.c (uniscribe_shape): Shut up compiler warning in
6290 LGLYPH_SET_CODE.
6291
62922008-08-29 Kenichi Handa <handa@m17n.org>
6293
6294 * fileio.c (report_file_error): Don't downcase the first character
6295 of errstring if it is still unibyte.
6296
62972008-08-29 Kenichi Handa <handa@m17n.org>
6298
6299 These changes are to re-implement the automatic composition so
6300 that it doesn't use text properties.
6301
6302 * Makefile.in (ftfont.o): Depend on composite.h.
6303 (composite.o): Depend dispextern.h, font.h, frame, and window.h.
6304
6305 * character.h (Vunicode_category_table): Extern it.
6306
6307 * character.c (Vunicode_category_table): New variable.
6308 (syms_of_character): DEFVAR_LISP Vunicode_category_table.
6309
6310 * chartab.c (optimize_sub_char_table): Perform more greedy
6311 optimization.
6312
b8ff72fa
SM
6313 * composite.h (enum composition_method):
6314 Delete COMPOSITION_WITH_GLYPH_STRING.
aac0c6e3
MR
6315 (COMPOSITION_METHOD): Don't check COMPOSITION_WITH_GLYPH_STRING.
6316 (Vcomposition_function_table): Extern it.
6317 (LGSTRING_XXX, LGLYPH_XXX): Macros moved from font.h.
6318 (composition_gstring_put_cache, composition_gstring_from_id)
6319 (composition_gstring_p, composition_gstring_width)
6320 (composition_compute_stop_pos, composition_reseat_it)
6321 (composition_update_it, composition_adjust_point): Extern them.
6322 (Fcomposition_get_gstring): EXFUN it.
6323
d66c0241 6324 * composite.c: Include window.h, frame.h, dispextern.h, font.h.
aac0c6e3
MR
6325 (Vcomposition_function_table)
6326 (get_composition_id): Don't handle COMPOSITION_WITH_GLYPH_STRING.
b8ff72fa
SM
6327 (gstring_hash_table, gstring_work, gstring_work_headers):
6328 New variables.
aac0c6e3
MR
6329 (gstring_lookup_cache, composition_gstring_put_cache)
6330 (composition_gstring_from_id, composition_gstring_p)
6331 (composition_gstring_width, fill_gstring_header)
6332 (fill_gstring_body, autocmp_chars, composition_compute_stop_pos)
6333 (composition_reseat_it, composition_update_it)
b8ff72fa 6334 (composition_adjust_point, Fcomposition_get_gstring): New functions.
aac0c6e3
MR
6335 (syms_of_composite): Initialize gstring_hash_table, gstrint_work,
6336 and gstring_work_headers. DEFVAR_LISP composition-function-table.
6337 Defsubr compostion_get_gstring.
6338
6339 * dispextern.h (struct glyph): New union u.cmp. Delete the member
6340 cmp_id.
6341 (struct glyph_string): Delete the member gidx. New members
6342 cmp_id, cmp_from, and cmp_to.
6343 (enum it_method): Delete GET_FROM_COMPOSITION.
6344 (struct composition_it): New struct.
6345 (struct it): New member cmp_it, and iterator_stack_entry.cmp_it.
6346 Delete c, len, cmp_id, cmp_len in u.comp.
6347
6348 * font.h (enum lgstring_indices): Delete it.
b8ff72fa 6349 (LGSTRING_XXX, LGLYPH_XXX): Move these macros to composite.h.
aac0c6e3 6350 (enum lglyph_indices): Likewise.
b8ff72fa 6351 (font_range): Adjust extern.
aac0c6e3
MR
6352 (font_fill_lglyph_metrics): Extern it.
6353
6354 * font.c (QCf): New variable.
6355 (check_gstring): Use LGSTRING_GLYPH_LEN, not LGSTRING_LENGTH.
6356 (font_prepare_composition): Delete this function.
6357 (font_range): Type and arguments changed.
6358 (Ffont_make_gstring, Ffont_fill_gstring): Delete them.
6359 (font_fill_lglyph_metrics): New function.
b8ff72fa 6360 (Ffont_shape_text): Rename to Ffont_shape_gstring and change arguments.
aac0c6e3 6361 (syms_of_font): DEFSYM QCf. Delete defsubr for
b8ff72fa
SM
6362 Sfont_make_gstring, Sfont_fill_gstring, Sfont_shape_text.
6363 Defsubr Sfont_shape_gstring.
aac0c6e3
MR
6364
6365 * fontset.h (font_for_char): Extern it.
6366
6367 * fontset.c (font_for_char): New function.
6368
6369 * ftfont.c: Include composite.h.
6370 (ftfont_resolve_generic_family): Add langset "en" to pattern.
b8ff72fa 6371 (ftfont_shape_by_flt): Use LGSTRING_GLYPH_LEN, not LGSTRING_LENGTH.
aac0c6e3
MR
6372
6373 * indent.c: Include composite.h and dispextern.h.
6374 (check_composition): Delete this function.
6375 (scan_for_column): Handle composition by
6376 composition_compute_stop_pos, composition_reseat_it, and
6377 composition_update_it.
6378 (compute_motion): Likewise.
6379 (Fvertical_motion): Fix checking of composition.
6380
6381 * keyboard.c (adjust_point_for_property): Check composition by
6382 composition_adjust_point.
6383
b8ff72fa 6384 * nsterm.m (ns_draw_glyph_string): Adjust for the change of
aac0c6e3
MR
6385 struct glyph_string.
6386
b8ff72fa
SM
6387 * term.c (encode_terminal_code): Adjust for the change of struct glyph.
6388 (append_composite_glyph): Adjust for the change of struct it and
aac0c6e3
MR
6389 struct glyph.
6390 (produce_composite_glyph): Likewise.
6391
b8ff72fa
SM
6392 * w32term.c (x_draw_composite_glyph_string_foreground):
6393 Adjust for the change of struct glyph_string.
aac0c6e3
MR
6394 (x_draw_glyph_string): Likewise.
6395
6396 * w32uniscribe.c (struct uniscribe_font_info): Include composite.h.
6397 (uniscribe_shape): Use LGSTRING_GLYPH_LEN, not LGSTRING_LENGTH.
6398
6399 * xdisp.c: Include font.h.
6400 (it_props): Delete the entry for Qauto_composed.
6401 (init_iterator): Initialize it->cmp_it.id to -1.
6402 (compute_stop_pos): Call composition_compute_stop_pos.
b8ff72fa 6403 (face_before_or_after_it_pos): Adjust for the change of struct it.
aac0c6e3
MR
6404 (handle_auto_composed_prop): Delete it.
6405 (handle_composition_prop): Handle only static composition.
6406 (next_overlay_string): Remove it->method == GET_FROM_COMPOSITION
6407 from xassert. Initialize it->cmp_it.stop_pos.
b8ff72fa 6408 (push_it): Adjust for the change of struct it.
aac0c6e3
MR
6409 (pop_it): Likewise.
6410 (get_next_element): Delete next_element_from_composition.
6411 (CHAR_COMPOSED_P): New macro.
6412 (get_next_display_element): For automatic composition, get a face
6413 from the font in the glyph-string.
6414 (set_iterator_to_next): For GET_FROM_BUFFER and GET_FROM_STRING,
b8ff72fa 6415 check composition by it->cmp_it.id. Delete GET_FROM_COMPOSITION case.
aac0c6e3
MR
6416 (next_element_from_string): Check if the character at the current
6417 position is composed by CHAR_COMPOSED_P.
6418 (next_element_from_buffer): Likewise.
d66c0241
JB
6419 (next_element_from_composition): Adjust for the change of struct it.
6420 Update it->cmp_it.
b8ff72fa
SM
6421 (dump_glyph): Adjust for the change of struct glyph.
6422 (fill_composite_glyph_string): Adjust for the change of struct
aac0c6e3
MR
6423 it and struct glyph. Don't handle automatic composition here.
6424 (fill_gstring_glyph_string): New function.
6425 (x_get_glyph_overhangs): Handle automatic composition.
b8ff72fa 6426 (BUILD_COMPOSITE_GLYPH_STRING): Adjust for the change of struct glyph.
aac0c6e3
MR
6427 (BUILD_GSTRING_GLYPH_STRING): New macro.
6428 (BUILD_GLYPH_STRINGS): Call BUILD_GSTRING_GLYPH_STRING for
6429 automatic composition.
b8ff72fa 6430 (append_composite_glyph): Adjust for the change of struct it and
aac0c6e3 6431 struct glyph.
b8ff72fa 6432 (x_produce_glyphs): Adjust for the change of struct it.
aac0c6e3 6433
b8ff72fa 6434 * xterm.c (x_draw_composite_glyph_string_foreground): Adjust for
aac0c6e3
MR
6435 the change of struct glyph_string.
6436 (x_draw_glyph_string): Likewise.
6437
64382008-08-29 Glenn Morris <rgm@gnu.org>
6439
6440 * buffer.c (word-wrap): Doc fix.
6441 * xdisp.c (truncate-partial-width-windows): Doc fix.
6442 Increase default to 50.
6443
64442008-08-29 Chong Yidong <cyd@stupidchicken.com>
6445
6446 * xdisp.c (update_tool_bar_unwind): New function.
6447 (update_tool_bar): Temporarily set selected frame before building
6448 tool-bar items.
6449
64502008-08-28 Michael Albinus <michael.albinus@gmx.de>
6451
6452 * dbusbind.c (XD_ERROR, XD_DEBUG_MESSAGE): Use strncpy and
6453 snprintf, respectively.
6454 (xd_append_arg): Convert strings with Fstring_make_unibyte.
6455
64562008-08-28 Chong Yidong <cyd@stupidchicken.com>
6457
6458 * Makefile.in: Revert (undocumented) 2008-08-20 change adding
6459 LDFLAGS to GNUstep CC invocation.
6460
64612008-08-27 Chong Yidong <cyd@stupidchicken.com>
6462
6463 * indent.c (Fvertical_motion): Revert last change. Handle the
6464 general case where we are moving forward, and PT spans multiple
6465 screen lines.
6466
6467 * eval.c (find_handler_clause): Temporarily increase
6468 max-lisp-eval-depth while printing the backtrace buffer, to
6469 guarantee that help-mode code can run.
6470
64712008-08-27 Eli Zaretskii <eliz@gnu.org>
6472
6473 * msdos.c (Fmsdos_remember_default_colors): Don't reverse frame
6474 colors under -rv.
6475 (IT_set_frame_parameters): Don't swap foreground and background
6476 colors if `(reverse . t)' is present in the frame properties.
6477 (internal_terminal_init): Call init_frame_faces only for the
6478 initial frame.
6479
64802008-08-27 Andreas Schwab <schwab@suse.de>
6481
6482 * dired.c (Ffile_attributes): Avoid compiler warning in bitshift.
6483
64842008-08-27 Andreas Schwab <schwab@suse.de>
6485
6486 * search.c (search_buffer): Set char_base to zero only at the end.
6487
64882008-08-27 Kenichi Handa <handa@m17n.org>
6489
b8ff72fa 6490 * fileio.c (report_file_error): Fix handling of multibyte error string.
aac0c6e3
MR
6491
64922008-08-27 Andreas Seltenreich <seltenreich@gmx.de>
6493
6494 * xterm.c (x_term_init): Temporarily hide the partially
6495 initialized terminal while calling vendor-specific-keysyms.
6496
64972008-08-26 Eli Zaretskii <eliz@gnu.org>
6498
6499 * msdos.c (internal_terminal_init): Most initializations done only
6500 once, especially initial_screen_colors[] and termscript open.
6501
65022008-08-26 Chong Yidong <cyd@stupidchicken.com>
6503
6504 * eval.c (Fcondition_case): Doc fix.
6505
6506 * widgetprv.h (EmacsFramePart): Change font member to the new font
6507 struct.
6508
6509 * widget.c: Include character.h and font.h for XSETFONT.
6510 (setup_frame_gcs): Compute X font id from font struct, just once.
6511
65122008-08-26 Eli Zaretskii <eliz@gnu.org>
6513
6514 * term.c (get_named_tty): Fix last change.
6515
65162008-08-26 Chong Yidong <cyd@stupidchicken.com>
6517
6518 * indent.c (Fvertical_motion): If moving forward starting from a
b8ff72fa 6519 multi-line string, move the iterator to the last line of that string.
aac0c6e3
MR
6520
65212008-08-25 Eli Zaretskii <eliz@gnu.org>
6522
6523 * frame.c (do_switch_frame): Mark previously displayed frame as
6524 obscured for FRAME_MSDOS_P frames as well.
6525
65262008-08-24 Eli Zaretskii <eliz@gnu.org>
6527
6528 * frame.c (make_terminal_frame): Initialize f->terminal,
6529 f->terminal->reference_count, and scroll bars on MS-DOS as well.
6530 Set the top frame to newly created frame.
6531 (Fmake_terminal_frame): Reuse the_only_display_info.
6532
6533 * vm-limit.c (get_lim_data) [MSDOS]: Use alternative methods of
6534 estimating available memory.
6535
b97439ce 65362008-08-23 David Reitter <david.reitter@gmail.com>
aac0c6e3
MR
6537
6538 * nsterm.m (ns_draw_window_cursor): Don't call
6539 NSDisableScreenUpdates and NSEnableScreenUpdates on
6540 non-NS_IMPL_COCOA systems.
6541
65422008-08-23 Andreas Schwab <schwab@suse.de>
6543
6544 * process.c (procfs_system_process_attributes): Fix use of
6545 uninitialized variables.
6546
65472008-08-23 Eli Zaretskii <eliz@gnu.org>
6548
6549 * emacs.c (main) [MSDOS]: Call syms_of_xmenu.
6550
6551 * dispnew.c (init_display): Remove MS-DOS specific conditions for
6552 calling tty-set-up-initial-frame-faces.
6553
b8ff72fa
SM
6554 * xmenu.c (Fx_popup_dialog, Fx_popup_menu, xmenu_show):
6555 Allow MSDOS frames along with X frames.
aac0c6e3
MR
6556
6557 * termhooks.h (TERMINAL_ACTIVE_P): Handle output_msdos_raw in
6558 addition to output_termcap.
6559
6560 * xdisp.c (redisplay_internal) [MSDOS]: Don't call set_tty_color_mode.
6561
6562 * termchar.h (FRAME_TTY): Support output_msdos_raw.
6563 (struct tty_display_info) [MSDOS]: Add fields related to mouse
6564 highlight.
6565
6566 * process.c [!subprocesses]: Define QCname.
6567 (syms_of_process): Intern and staticpro it.
6568
6569 * w16select.c (Fw16_set_clipboard_data, Fw16_get_clipboard_data):
b8ff72fa
SM
6570 Adjust for changes in encoding/decoding routines.
6571 Use encode_coding_object and decode_coding_object instead of
aac0c6e3
MR
6572 encode_coding and decode_coding.
6573
b8ff72fa 6574 * sysdep.c (init_sys_modes): Call dos_ttraw with tty_out as argument.
aac0c6e3
MR
6575
6576 * dosfns.c: Include frame.h before termhooks.h.
6577 (dos_cleanup): Use CURTTY ()->termscript instead of a global
6578 variable termscript.
6579
6580 * s/msdos.h (USER_FULL_NAME): Define.
6581 (SYSTEM_PURESIZE_EXTRA): Bump up to 100K.
6582
6583 * editfns.c (USER_FULL_NAME): Define to pw->pw_gecos if undefined.
6584 (Fuser_full_name): Use USER_FULL_NAME instead of a literal
6585 pw->pw_gecos.
6586
6587 * keyboard.c (handle_interrupt) [MSDOS]: Call cursor_to with
6588 SELECTED_FRAME as additional (1st) argument.
6589 (tty_read_avail_input): Handle output_msdos_raw in
6590 addition to output_termcap.
6591
6592 * msdos.c: Include frame.h before termhooks.h.
6593 (mouse_on, mouse_off, mouse_moveto, mouse_init)
6594 (msdos_set_cursor_shape, IT_set_face, IT_write_glyphs)
6595 (show_mouse_face, IT_clear_end_of_line, IT_clear_screen)
6596 (IT_clear_to_end, IT_cursor_to, IT_display_cursor, IT_cmgoto)
6597 (IT_set_terminal_modes, IT_reset_terminal_modes)
6598 (IT_set_frame_parameters): Use tty->termscript instead of a global
6599 variable termscript.
6600 (IT_write_glyphs): Use tty->terminal->terminal_coding instead of a
6601 global variable terminal_coding. Don't refer to
6602 Vnonascii_translation_table.
6603 (internal_terminal_init): Set Vwindow_system in current_kboard.
6604 Don't use TTY_CHAR_INS_DEL_OK. Set Vinitial_window_system.
6605 Announce date and time of session start, if termscript is open.
6606 Don't zero out the_only_display_info (it is done in
b8ff72fa
SM
6607 term.c:init_tty). Open termscript only of not already open.
6608 Log "SCREEN SAVED" here, instead of IT_set_terminal_modes. Init mouse
aac0c6e3
MR
6609 here instead of dos_ttraw. Don't initialize display if this is an
6610 initial tty. Don't set FRAME_FONT.
6611 (Vwindow_system_version): Bump to 23.
6612 (dos_ttraw): Accept a TTY argument; all callers fixed. If mouse
6613 is available, set up mouse_position_hook.
6614 (dos_ttraw, IT_set_terminal_modes): If called with initial
6615 terminal, do nothing.
6616 (IT_set_frame_parameters): Handle the Qtty_type frame
6617 parameter by calling internal_terminal_init.
6618 (dos_set_window_size, show_mouse_face)
6619 (clear_mouse_face, IT_note_mode_line_highlight)
6620 (IT_note_mouse_highlight, IT_update_begin, IT_frame_up_to_date)
6621 (dos_rawgetc): Use tty_display_info instead of x_display_info.
6622 (initialize_msdos_display): New function.
6623 (IT_cursor_to, IT_clear_to_end, IT_clear_screen)
6624 (IT_clear_end_of_line, IT_insert_glyphs, IT_write_glyphs)
6625 (IT_delete_glyphs, IT_ring_bell, IT_reset_terminal_modes)
6626 (IT_set_terminal_modes, IT_set_terminal_window, IT_update_begin):
b8ff72fa 6627 Accept additional argument: a pointer to a frame. Update all callers.
aac0c6e3
MR
6628 (request_sigio, unrequest_sigio): Don't define, now defined on
6629 sysdep.c.
6630 (IT_write_glyphs): Rewrite to use encode_terminal_code.
6631
6632 * term.c [MSDOS]: Include msdos.h.
6633 (init_tty) [MSDOS]: Reuse most of WINDOWSNT branch. Change cpp
6634 conditional to DOS_NT. Allow only one call to this function in a
6635 session. Don't allocate a new struct tty_display_info; instead,
6636 reuse the_only_display_info. Call get_tty_size to get screen
6637 dimensions. Call init_baud_rate to set bad_rate.
6638 (dissociate_if_controlling_tty) [MSDOS]: Ifdef away function body.
6639 (Fsuspend_tty) [MSDOS]: Don't close input and output.
b8ff72fa 6640 (Fresume_tty) [MSDOS]: Don't reopen the TTY; instead, use stdin/stdout.
aac0c6e3
MR
6641 (get_tty_terminal, get_named_tty, Ftty_type)
6642 (Fcontrolling_tty_p): Handle output_msdos_raw in addition to
6643 output_termcap.
b8ff72fa
SM
6644 (Fresume_tty, Fsuspend_tty, init_tty, delete_tty):
6645 Call add_keyboard_wait_descriptor and delete_keyboard_wait_descriptor
2ae37cf0 6646 only when subprocesses are supported.
aac0c6e3
MR
6647
6648 * frame.c (make_terminal_frame) [MSDOS]: Adjust initialization of
6649 f->output_data.x.
6650 (Fmake_terminal_frame) [MSDOS]: Don't allow creation of new
6651 terminal devices.
6652
5582fbc7 6653 * msdos.h: Remove definition of struct x_display_info and struct
aac0c6e3
MR
6654 x_output.
6655 (FRAME_FONT): Use output_data.tty.
6656 (FRAME_FOREGROUND_PIXEL, FRAME_BACKGROUND_PIXEL): Don't define.
b8ff72fa
SM
6657 (struct x_display_info): Rename from display_info. Update all users in
6658 msdos.c.
aac0c6e3 6659 (struct x_output): Remove background_pixel and foreground_pixel.
b8ff72fa 6660 (the_only_display_info): Rename from the_only_x_display.
aac0c6e3
MR
6661 (dos_ttraw): Update prototype.
6662
6663 * Makefile.in (MSDOS_OBJ): Add xmenu.o.
6664 (SOME_MACHINE_LISP): Add ../lisp/term/pc-win.elc.
6665
66662008-08-23 Jason Rumney <jasonr@gnu.org>
6667
6668 * image.c (enum tiff_keyword_index, tiff_format): Add :index keyword.
6669 (fn_TIFFSetDirectory): New library function used.
6670 (init_tiff_functions) [HAVE_NTGUI]: Initialize it.
6671 (tiff_load): Use :index to select among multiple images. Set count
6672 property when multiple images exist.
6673 (gif_format): Use :index, not :image.
6674
66752008-08-23 Chong Yidong <cyd@stupidchicken.com>
6676
6677 * xdisp.c (try_scrolling): Check INT_MAX instead of
6678 MOST_POSITIVE_FIXNUM for maximum integer value. Include limits.h
6679 to obtain INT_MAX.
6680
66812008-08-21 İsmail Dönmez <ismail@namtrac.org> (tiny change)
6682
6683 * xterm.c (x_delete_display): Don't call XrmDestroyDatabase on GTK+.
6684
66852008-08-21 Christian Faulhammer <opfer@gentoo.org> (tiny change)
6686
6687 * Makefile.in (temacs${EXEEXT}): On GNUstep, link to appropriate
6688 GNUstep library location.
6689
66902008-08-21 Chong Yidong <cyd@stupidchicken.com>
6691
6692 * xfaces.c (x_update_menu_appearance): Check validity of menu font
6693 before using it.
6694
6695 * puresize.h (BASE_PURESIZE): Increase to 1250000.
6696
66972008-08-20 Adrian Robert <Adrian.B.Robert@gmail.com>
6698
6699 * nsfns.m (ns-read-file-name): Add casts to avoid warning.
6700 (ns-convert-utf8-nfd-to-nfc): Warn if cannot execute correctly.
6701 * nsfont.m (nsfont_draw): Compare indexed colors to 0, not nil.
6702 * nsterm.h (EmacsView-unlockFocusNeedsFlush:): Add declaration.
6703 (EmacsApp-cursor_blink_handler): Remove declaration.
6704 * nsterm.m (ns_draw_glyph_string): Update first conditional body to
6705 match 01 Feb 2008 changes in xterm.c.
6706 (ns_read_socket): Add cast to avoid warning.
6707 (EmacsApp-application:openFiles:): Don't call replyToOpenOrPrint: on
6708 GNUstep.
6709
67102008-08-20 Chong Yidong <cyd@stupidchicken.com>
6711
6712 * xselect.c (x_get_foreign_selection): Return nil if desired
6713 selection could not be obtained, instead of signalling an error.
6714
67152008-08-20 David Reitter <david.reitter@gmail.com>
6716
6717 * nsfns.m (ns_lisp_to_cursor_type): Replace with generic xfns.c.
6718 * nsterm.m: Remove ns-specific code for cursor blinking.
6719 (ns_draw_window_cursor): Clear cursor properly rather than
6720 redrawing the area. Respect width of bar cursors.
6721 These changes enable the use of generic blink-cursor-mode and
6722 generic cursor types in NS and support smooth cursor movements (do
6723 not blink off after command).
6724 * xdisp.c (get_phys_cursor_geometry): Redraw wider rectangle on
6725 Nextstep, too.
6726
67272008-08-19 Kenichi Handa <handa@m17n.org>
6728
6729 * font.c (Vfont_log_deferred): New variable.
6730 (font_add_log): Check Vfont_log_deferred.
6731 (font_deferred_log): New function.
6732
6733 * font.h (font_deferred_log): Extern it.
6734
6735 * fontset.c (reorder_font_vector): Use encoding charset of fonts
6736 for sorting.
6737 (face_for_char): Use deferred log.
6738
67392008-08-18 Kenichi Handa <handa@m17n.org>
6740
6741 * fontset.c (face_for_char): Add font log.
6742
6743 * font.c (font_add_log): Add the font properties :script, :lang,
6744 and :otf in the log.
6745
67462008-08-17 Chong Yidong <cyd@stupidchicken.com>
6747
6748 * xdisp.c: Remove dead code.
6749 (handle_invisible_prop, next_overlay_string): Defer call to
6750 setup_for_ellipsis.
6751 (handle_stop, set_iterator_to_next): Call setup_for_ellipsis.
6752
67532008-08-15 Chong Yidong <cyd@stupidchicken.com>
6754
6755 * xfaces.c (lookup_derived_face): Properly handle possible zero
6756 return value of get_lface_attributes.
6757 (merge_faces): Don't tell lookup_derived_face to signal an error
6758 if face is not found.
6759
6760 * dired.c (Fdirectory_files): Doc fix.
6761
6762 * process.c (make_process): Initialize kill_without_query struct
6763 member.
6764
67652008-08-15 Eli Zaretskii <eliz@gnu.org>
6766
6767 * w32.c (w32_system_process_attributes) [_MSC_VER < 1300]:
6768 Alternative calculation of totphys for Visual Studio 6.
6769
6770 * w32fns.c [_MSC_VER && _MSC_VER < 1300]: Declare HMONITOR.
6771
6772 * w32.c (_MEMORY_STATUS_EX, MEMORY_STATUS_EX, LPMEMORY_STATUS_EX):
6773 Rename from _MEMORYSTATUSEX, MEMORYSTATUSEX, LPMEMORYSTATUSEX.
6774 All users changed.
6775 (stat): Only root directory passed to GetDriveType. Allow RAM
6776 disk as well as local fixed disk when w32-get-true-file-attributes
6777 is set to `local'.
6778 (CopySid_Proc, EqualSid_Proc, GetLengthSid_Proc): New typedefs.
6779 (equal_sid, get_length_sid, copy_sid): New wrapper functions.
6780 (w32_cached_id, w32_add_to_cache): New functions.
6781 (get_name_and_id): Look account names in the cache before calling
6782 lookup_account_sid.
6783 (g_b_init_get_length_sid, g_b_init_equal_sid, g_b_init_copy_sid):
6784 New initialization flags.
6785 (globals_of_w32): Initialize them to zero.
6786 (w32_system_process_attributes): Use w32_cached_id and
6787 w32_add_to_cache.
6788
67892008-08-14 Lawrence Mitchell <wence@gmx.li>
6790
6791 * lread.c (Fread_char, Fread_char_exclusive): If no character
6792 event is read before timeout is reached, return nil, rather than
6793 converting to a number.
6794
67952008-08-14 Chong Yidong <cyd@stupidchicken.com>
6796
6797 * fns.c (use_dialog_box): Doc fix.
6798
6799 * s/darwin.h: Undefine HAVE_RES_INIT, which appears to be harmful
6800 on OS X.
6801
68022008-08-13 Chong Yidong <cyd@stupidchicken.com>
6803
6804 * frame.c (Qns_parse_geometry): New var.
6805 (Fx_parse_geometry): For HAVE_NS, call ns-parse-geometry.
6806
68072008-08-11 Chong Yidong <cyd@stupidchicken.com>
6808
6809 * xdisp.c (x_produce_glyphs): Handle the case when font has no
6810 space character in calculating tabs.
6811
68122008-08-11 Dan Nicolaescu <dann@ics.uci.edu>
6813
6814 * Makefile.in (bootstrap-emacs): Use ln -f in the CANNOT_DUMP case.
6815
68162008-08-10 Glenn Morris <rgm@gnu.org>
6817
6818 * process.c (procfs_system_process_attributes): Use EMACS_INTs to
6819 silence gcc "limited range of data type" warnings in some
6820 make_fixnum_or_float calls.
6821
68222008-08-09 Eli Zaretskii <eliz@gnu.org>
6823
6824 * w32.c (w32_system_process_attributes): If the process does not
6825 exist, return nil.
6826
6827 * w32.c: Include thelp32.h, psapi.h and coding.h.
6828 (_MEMORYSTATUSEX, _PROCESS_MEMORY_COUNTERS_EX): New struct
6829 declarations.
6830 (CreateToolhelp32Snapshot_Proc, Process32First_Proc)
6831 (Process32Next_Proc): New typedefs.
6832 (g_b_init_create_toolhelp32_snapshot, g_b_init_process32_first)
6833 (g_b_init_process32_next, g_b_init_open_thread_token)
6834 (g_b_init_impersonate_self, g_b_init_revert_to_self)
6835 (g_b_init_get_process_memory_info, g_b_init_global_memory_status)
6836 (g_b_init_get_process_working_set_size)
6837 (g_b_init_global_memory_status_ex): New static variables.
6838 (globals_of_w32): Initialize them.
6839 (create_toolhelp32_snapshot, process32_first, process32_next)
6840 (open_thread_token, impersonate_self, revert_to_self)
6841 (get_process_memory_info, get_process_working_set_size)
6842 (global_memory_status, global_memory_status_ex): New wrapper
6843 functions.
6844 (w32_list_system_processes, w32_system_process_attributes)
6845 (enable_privilege, restore_privilege, ltime, process_times):
6846 New functions.
6847 (convert_time_raw): New function.
6848 (convert_time): Remove conversion of FILETIME into time in 100
6849 nsec units, call convert_time_raw instead.
6850
6851 * process.h (w32_list_system_processes, w32_system_process_attributes):
6852 Add prototypes.
6853 (Qeuid, Qegid, Qcomm, Qstate, Qppid, Qpgrp, Qsess, Qttname)
6854 (Qminflt, Qmajflt, Qcminflt, Qcmajflt, Qutime, Qstime, Qcutime)
6855 (Qpri, Qnice, Qthcount, Qstart, Qvsize, Qrss, Qargs, Quser, Qgroup)
6856 (Qetime, Qpcpu, Qpmem, Qtpgid, Qcstime): Add extern declarations.
6857
6858 * process.c (Fsystem_process_attributes): Doc fix.
6859
68602008-08-08 Chong Yidong <cyd@stupidchicken.com>
6861
6862 * xdisp.c (move_it_to): When stopping at a charpos, check if that's
6863 a continued multi-char glyph; if so, advance to the actual glyph.
6864
68652008-08-07 Dan Nicolaescu <dann@ics.uci.edu>
6866
6867 * s/darwin.h (OTHER_FILES): Do not define here, defined in config.in.
6868
6869 * Makefile.in (ALL_OBJC_CFLAGS): New variable.
6870 (.m.o): Use it.
6871 * config.in: Regenerate.
6872
68732008-08-07 Chong Yidong <cyd@stupidchicken.com>
6874
6875 * xdisp.c (redisplay_window): Revert last change.
6876 (try_window): Check bottom scroll margin too.
6877
68782008-08-06 Adrian Robert <Adrian.B.Robert@gmail.com>
6879
6880 * config.in: Regenerate.
6881
6882 * Makefile.in (emacs): Remove ifndef NS conditional for 'emacs
6883 -list-load-path-shadows'.
6884 (nsgui.h): Reduce number of things depending on it.
6885
68862008-08-06 Chong Yidong <cyd@stupidchicken.com>
6887
6888 * xdisp.c (try_scrolling): Use iterator to find the scroll margin,
6889 instead of window-end which does the wrong thing at eob.
6890 (try_cursor_movement): Minor optimization.
6891 (redisplay_window): If scroll margin is defined, don't assume
6892 window doesn't need scrolling.
6893
68942008-08-06 Adrian Robert <Adrian.B.Robert@gmail.com>
6895
6896 * config.in: Regenerate.
6897
6898 * Makefile.in: Move nsXXX.m dependencies into big alphabetical list.
6899 (mostlyclean): Don't delete *.d under NS.
6900
6901 * nsterm.h (NS_HAVE_INTEGER): Change to NS_HAVE_NSINTEGER.
6902
69032008-08-06 Kenichi Handa <handa@m17n.org>
6904
6905 * xfont.c (xfont_list_family): Return a list of symbols, not strings.
6906
69072008-08-06 Andreas Schwab <schwab@suse.de>
6908
6909 * config.in: Regenerate.
6910
69112008-08-05 Chong Yidong <cyd@stupidchicken.com>
6912
6913 * xdisp.c (redisplay_window): Don't enforce scroll-margin when
6914 forcing a window start.
6915
6916 * fileio.c (Vauto_save_list_file_name): Move here from file.el.
6917 (auto_save_1): Update modtime when auto-save-list-file-name is on.
6918
69192008-08-04 Adrian Robert <Adrian.B.Robert@gmail.com>
6920
6921 * emacs.c (main): Under NS, set working dir to HOME when get a "psn"
6922 argument.
6923
69242008-08-05 Juanma Barranquero <lekktu@gmail.com>
6925
6926 * buffer.c (syms_of_buffer) <scroll-up-aggressively>:
6927 <scroll-down-aggressively, before-change-functions>:
6928 <after-change-functions>: Reflow docstrings.
6929
69302008-08-04 Adrian Robert <Adrian.B.Robert@gmail.com>
6931 Ken Raeburn <raeburn@gnu.org>
6932
6933 Dock menu customization, based on a patch by Ken Raeburn, plus some
6934 other fixes.
6935 * nsmenu.m (dockMenu): New variable.
6936 (EmacsDialog -clicked:): Fix mistake in change of 2008-07-17.
6937
6938 * nsterm.h (dockMenu): Declare.
6939
6940 * nsterm.m (KEY_NS_NEW_FRAME): New definition.
6941 (ns_term_init): Initialize dockMenu.
6942 (EmacsApp -newFrame:, -applicationDockMenu:): New methods.
6943 (EmacsView -windowShouldClose:): Don't behave specially if <= 1 frame
6944 left.
6945
6946 * lisp.h (LSB_TAG): Use on DARWIN_OS, not NS_IMPL_COCOA.
6947
69482008-08-04 Chong Yidong <cyd@stupidchicken.com>
6949
6950 * nsterm.h: Test directly for NS_HAVE_INTEGER before defining it.
6951
6952 * config.in: Regenerate.
6953
69542008-08-04 Seiji Zenitani <zenitani@mac.com>
6955
6956 * nsfns.m (x-create-frame): Set the frame parameter alpha to nil.
6957
69582008-08-04 Chong Yidong <cyd@stupidchicken.com>
6959
6960 * nsterm.h (find_and_call_menu_selection): Fix prototype.
6961
69622008-08-04 Adrian Robert <Adrian.B.Robert@gmail.com>
6963
6964 * emacs.c (main: unexec_init_emacs_zone): Call if on DARWIN_OS.
6965
6966 * keyboard.h: Comment an #endif.
6967
6968 * lisp.h (have_menus_p): Adjust comment.
6969
6970 * menu.c (find_and_return_menu_selection): Fix comparison with
6971 client_data.
6972
6973 * nsmenu.m (popup_activated_flag): New variable.
6974 (popup_activated): New function.
6975 (menu-or-popup-active-p): New exported lisp definition.
6976 (ns_popup_menu): Set popup_activated_flag. Call discard_menu_items()
6977 when popup done.
6978 (ns_popup_dialog): Set popup_activated_flag.
6979
6980 * nsterm.m (EmacsView -conversationIdentifier): Use NSInteger
6981 version for GNUstep (handled by conditional typedef in nsterm.m).
6982 (ns_get_color): Remove special-casing for "darkblue", "dark blue" (now
6983 in rgb.txt).
6984
6985 * process.c (init_process): Use DARWIN_OS, not DARWIN.
6986
6987 * sysselect.h: Conditionalize init_process undef on DARWIN_OS.
6988
6989 * syssignal.h (FORWARD_SIGNAL_TO_MAIN_THREAD): Do it also under NS.
6990
6991 * xdisp.c (redisplay_internal, note_mouse_highlight): Under NS,
6992 shortcircuit if popup_activated like GTK and X toolkit.
6993
6994 * m/inter386.h: Change DARWIN to DARWIN_OS.
6995
6996 * s/darwin.h: Add #define DARWIN_OS. Get rid of C_SWITCH_SYSTEM def.
6997 Change LIBS_MACGUI to LIBS_NSGUI. Move temacs-conditionalized defs
6998 closer to C_SWITCH_SYSTEM_TEMACS so usage is understood. Expand
6999 comment on NO_SOCK_SIGIO.
7000
70012008-08-03 Chong Yidong <cyd@stupidchicken.com>
7002
7003 * nsterm.m (windowDidResize): Remove stopModal call.
7004
70052008-08-03 Andreas Schwab <schwab@suse.de>
7006
7007 * vm-limit.c (get_lim_data) [HAVE_GETRLIMIT && RLIMIT_AS]: Define.
7008 (check_memory_limits): Don't handle HAVE_GETRLIMIT here.
7009
70102008-08-02 Chong Yidong <cyd@stupidchicken.com>
7011
7012 * vm-limit.c (check_memory_limits): Don't use getrlimit on cygwin.
7013 Don't use uninitialized pointer variable when using getrlimit.
7014
70152008-08-02 Jason Rumney <jasonr@gnu.org>
7016
7017 * w32font.c (compute_metrics): Don't mess with glyph_idx setting here.
7018
70192008-08-02 Eli Zaretskii <eliz@gnu.org>
7020
7021 * alloc.c (NSTATICS): Bump to 0x640.
7022
7023 * s/gnu-linux.h (HAVE_PROCFS, LISTPROC, PROCATTR): New defines.
7024
7025 * lisp.h: Add prototype for directory_files_internal.
7026
7027 * process.c (Fsystem_processes_list, Fsystem_process_attributes):
7028 New functions.
7029 (syms_of_process): Defsubr them. Add initializations for various
7030 Q* symbols used in procfs_system_process_attributes.
7031 (procfs_list_system_processes, procfs_system_process_attributes)
7032 [HAVE_PROCFS]: New functions.
7033 (time_from_jiffies, ltime_from_jiffies, get_up_time, procfs_ttyname)
7034 (procfs_get_total_memory): New functions.
7035
70362008-08-01 Juanma Barranquero <lekktu@gmail.com>
7037
7038 * xfaces.c (Fx_load_color_file): Fix previous change;
7039 it is #ifdef WINDOWSNT, not WINDOWS_NT.
7040
70412008-08-01 Michael Albinus <michael.albinus@gmx.de>
7042
7043 * dbusbind.c (xd_read_message): Handle D-Bus error messages.
7044
70452008-08-01 Adrian Robert <Adrian.B.Robert@gmail.com>
7046
7047 * nsterm.h (NSInteger, NSUInteger): Add defines for non-Leopard.
7048
70492008-08-01 Chong Yidong <cyd@stupidchicken.com>
7050
7051 * nsfns.m (ns_frame_parm_handlers): Add empty entry for x_set_alpha.
7052
7053 * nsterm.m (EmacsApp -application:openFiles:): GNUstep does not
7054 define NSApplicationDelegateReplySuccess.
7055 (EmacsView -converstationIdentifier): Use long instead of
7056 NSInteger for GNUstep, since it doesn't have NSInteger.
7057
7058 * xmenu.c: Revert last change.
7059
7060 * keyboard.h: Fix last change.
7061
70622008-08-01 Juanma Barranquero <lekktu@gmail.com>
7063
7064 * xfaces.c (x-load-color-file): Use RGB() instead of manually shifting
7065 on Windows.
7066
70672008-08-01 Adrian Robert <Adrian.B.Robert@gmail.com>
7068
7069 Warning clearing and clean-up in NS port.
7070 * keyboard.h (xmalloc_widget_value, digest_single_submenu):
7071 Add prototypes.
7072 * nsgui.h (FACE_DEFAULT): Remove, unused.
7073 (XGCValues): Change colors to unsigned long.
7074 * nsterm.h (EmacsApp): Add declaration of all methods implemented in
7075 nsterm.m.
7076 (EmacsMenu -addItemWithWidgetValue:): Change to use NSMenuItem class.
7077 (ns_list_fonts): Remove, unused.
7078 (ns_font_to_xlfd, ns_fontname_to_xlfd): Drop prototypes.
7079 * nsfns.m (interpret_services_menu): Use NSMenuItem class.
7080 * nsfont.m (nsfont_open): Fix cast error in glyphs,metrics alloc.
7081 (nsfont_draw): Compare face colors to 0, not nil.
7082 * nsmenu.m (struct widget_value): Drop unneeded declaration.
7083 (EmacsMenu -addItemWithWidgetValue:, -fillWithWidgetValue:)
7084 (-addSubmenuWithTitle:): Use NSMenuItem class.
7085 (ns_popup_menu): Use NO, not NULL, for enabled setting.
7086 * nsterm.m (ns_draw_glyph_string): Don't compare font to ~0.
7087 (ns_clip_to_row): Make gc arg a BOOL.
7088 (ns_draw_fringe_bitmap, ns_draw_window_cursor): Use YES, NO in
7089 ns_clip_to_row() call.
7090 (ns_draw_glyph_string): Drop face comparison to ~0 (no longer
7091 used). Cast FRAME_FONT assignments.
7092 (ns_read_socket): Cast call to EmacsApp-fulfillService:withArg:.
7093 (ns_string_to_lispmod): Change arg to const char.
7094 (ns_term_init): Use NSMenuItem class.
7095 (EmacsApp -openFile:): Move to different section of file.
7096 (EmacsApp -application:openFiles:): Don't return a value, call
7097 -replyToOpenOrPrint:.
7098 (EmacsView -keyDown:): Fix up cast.
7099 (EmacsView -converstationIdentifier): Use NSInteger instead of long.
7100 (EmacsView -menuDown:): Cast tag in call to
7101 find_and_call_menu_selection().
7102 (ns_list_fonts): Remove, unused.
7103 (ns_font_to_xlfd): Make static. Cast result of UTF8String.
7104 (ns_fontname_to_xlfd): Make static.
7105 * w32menu.c (xmalloc_widget_value, digest_single_submenu):
7106 Remove prototypes (now in keyboard.h).
7107 (next_menubar_widget_id): Remove, unused.
7108 * xmenu.c (xmalloc_widget_value, digest_single_submenu):
7109 Remove prototypes (now in keyboard.h).
7110 * xfaces.c (ns_list_fonts, w32_list_fonts): Remove, unused.
7111
71122008-08-01 Dan Nicolaescu <dann@ics.uci.edu>
7113
7114 * Makefile.in (dispnew.o, gtkutil.o, sound.o, atimer.o)
7115 (floatfns.o): Depend on syssignal.h.
7116 (term.o): Depend on syssignal.h, systty.h, and $(INTERVAL_SRC).
7117
7118 * systty.h: Fix previous change that removed BSD_TERMIOS.
7119 Add comments to #ifdefs.
7120
71212008-08-01 Adrian Robert <Adrian.B.Robert@gmail.com>
7122
7123 * w32fns.c (w32-load-color-file): Remove.
7124 (x-open-connection): Use renamed Fx_load_color_file.
7125 * xfaces.c (x-load-color-file): Add.
7126 * nsterm.m (ns_initialize): Load colors from etc/rgb.txt instead of
7127 Emacs.clr.
7128 (hide_hourglass): BLOCK_INPUT before UNBLOCK.
7129
71302008-07-31 Michael Albinus <michael.albinus@gmx.de>
7131
7132 * dbusbind.c (Fdbus_call_method_asynchronously)
7133 (Fdbus_method_error_internal): New defuns.
7134 (xd_read_message): Handle also reply messages.
7135 (Vdbus_registered_functions_table): Extend docstring.
7136
71372008-07-31 Juanma Barranquero <lekktu@gmail.com>
7138
7139 * keyboard.c (gobble_input): Fix previous change.
7140
71412008-07-31 Dan Nicolaescu <dann@ics.uci.edu>
7142
7143 * bitmaps/README:
7144 * xfns.c:
7145 * termcap.c:
7146 * term.c:
7147 * syswait.h:
7148 * systty.h:
7149 * systime.h:
7150 * syssignal.h:
7151 * sysdep.c:
7152 * process.h:
7153 * process.c:
7154 * print.c:
7155 * ndir.h:
7156 * lread.c:
7157 * keyboard.c:
7158 * getpagesize.h:
7159 * floatfns.c:
7160 * fileio.c:
7161 * emacs.c:
7162 * doc.c:
7163 * dispnew.c:
7164 * dired.c:
7165 * data.c:
7166 * callproc.c:
7167 * buffer.c:
7168 * README:
7169 * Makefile.in:
7170 * s/template.h:
7171 * s/msdos.h:
7172 * m/vax.h: Remove VMS support.
7173 * s/vms.h:
7174 * vlimit.h:
7175 * uaf.h:
7176 * temacs.opt:
7177 * param.h:
7178 * ioctl.h: Remove file.
7179
71802008-07-31 Dan Nicolaescu <dann@ics.uci.edu>
7181
7182 * s/ms-w32.h (MULTI_KBOARD): Remove.
7183 * xterm.c:
7184 * xselect.c:
7185 * xfns.c:
7186 * window.c:
7187 * w32term.c:
7188 * w32fns.c:
7189 * terminal.c:
7190 * termhooks.h:
7191 * term.c:
7192 * sysdep.c:
7193 * keyboard.h:
7194 * keyboard.c:
7195 * frame.h:
7196 * frame.c:
7197 * frame.c: Remove references to MULTI_KBOARD, it is now the default.
7198 * config.in: Regenerate.
7199
72002008-07-30 Jason Rumney <jasonr@gnu.org>
7201
7202 * w32font.h (struct w32font_info): Use unicode version of textmetrics.
7203
7204 * w32font.c (w32font_encode_char): Leave as unicode if in range.
7205 (w32font_open_internal): Get unicode version of textmetrics.
7206 Don't enable or disable glyph indices here.
7207 (w32font_open): Disable use of glyph indices.
7208
7209 * w32uniscribe.c (uniscribe_open): Enable use of glyph indices.
7210
72112008-07-30 Chong Yidong <cyd@stupidchicken.com>
7212
7213 * minibuf.c (Vread_buffer_function): Doc fix.
7214
72152008-07-30 John Paul Wallington <jpw@pobox.com>
7216
7217 * minibuf.c (read_buffer_completion_ignore_case): New var.
7218 (Fread_buffer): Use it.
7219
72202008-07-30 Dan Nicolaescu <dann@ics.uci.edu>
7221
7222 * systty.h (sensemode): Remove empty #if. Remove reference to
7223 BSD_TERMIOS, unused.
7224
7225 * sysdep.c: Remove reference to DGUX.
7226 (closedir): Remove reference to BROKEN_CLOSEDIR, unused.
7227
7228 * config.in: Regenerate.
7229
72302008-07-30 Jason Rumney <jasonr@gnu.org>
7231
7232 * w32uniscribe.c (uniscribe_encode_char): Fix glyph buffer size.
7233
72342008-07-29 Jason Rumney <jasonr@gnu.org>
7235
7236 * w32uniscribe.c (uniscribe_shape): Avoid using context if cache
7237 is populated.
7238 (uniscribe_encode_char): Always use uniscribe.
7239 Avoid using context if cache is populated.
7240
72412008-07-29 Jan Djärv <jan.h.d@swipnet.se>
7242
7243 * xmenu.c (Fx_menu_bar_open_internal): Use activate_item signal to
7244 open menu.
7245
7246 * gtkutil.c (menu_nav_ended): Remove.
7247 (create_menus): Remove signal connect for menu_nav_ended.
7248
72492008-07-28 Chong Yidong <cyd@stupidchicken.com>
7250
7251 * xdisp.c (redisplay_window): Check return value of
7252 compute_window_start_on_continuation_line before forcing a window
7253 start.
7254
72552008-07-28 Jason Rumney <jasonr@gnu.org>
7256
7257 * w32font.c (w32font_text_extents): Use w32_metric_cache consistently.
7258
7259 * w32term.c (w32_enable_unicode_output, cleartype_active):
7260 Remove obsolete display options.
7261 (x_draw_glyph_string_background): Don't use old cleartype_active
7262 workaround.
7263 (w32_initialize): Remove cleartype_active initialization.
7264 (syms_of_w32term): Remove w32_enable_unicode_output initialization.
7265
72662008-07-28 Andreas Schwab <schwab@suse.de>
7267
7268 * lisp.h (init_weak_hash_tables, syms_of_font)
7269 (xd_read_queued_messages, syms_of_dbusbind): Declare.
7270 (remove_hash_entry): Don't declare.
7271 * eval.c (maybe_call_debugger): Make static and move before use.
7272 * gtkutil.c: Include <X11/Xft/Xft.h> if HAVE_XFT.
7273 * xdisp.c: Include "gtkutil.h" if USE_GTK.
7274 * xterm.h (x_set_frame_alpha): Declare.
7275
72762008-07-28 Jan Djärv <jan.h.d@swipnet.se>
7277
7278 * gtkutil.c (menu_nav_ended): Revert change from 2008-07-24.
7279 (create_menus): Connect selection-done to menu_nav_ended.
7280
72812008-07-27 Adrian Robert <Adrian.B.Robert@gmail.com>
7282
7283 * nsfns.m (x-create-frame): Add copy of parms argument to beginning.
7284 Set Vx_resource_name to a fallback. Replace read of 'buffered'
7285 parameter with read of 'alpha' one.
7286 (Qns_frame_parameter): Remove.
5582fbc7 7287 * nsselect.m (selection-coding-system)
aac0c6e3
MR
7288 (next-selection-coding-system, Vselection_coding_system)
7289 (Vnext_selection_coding_system): Drop.
7290
72912008-07-27 Adrian Robert <Adrian.B.Robert@gmail.com>
7292
7293 * nsfns.m (do-applescript, do_applescript): Rename to
7294 ns-do-applescript, ns_do_applescript, and move within file.
7295
72962008-07-27 Dan Nicolaescu <dann@ics.uci.edu>
7297
7298 Remove support for Mac Carbon.
7299 * mactoolbox.c:
7300 * macterm.h:
7301 * macterm.c:
7302 * macselect.c:
7303 * macmenu.c:
7304 * macgui.h:
7305 * macfns.c:
7306 * mac.c: Remove file.
7307 * s/darwin.h:
7308 * m/intel386.h:
7309 * xfaces.c:
7310 * xdisp.c:
7311 * window.c:
7312 * tparam.c:
7313 * termhooks.h:
7314 * termcap.c:
7315 * term.c:
7316 * syssignal.h:
7317 * sysselect.h:
7318 * sysdep.c:
7319 * process.c:
7320 * lread.c:
7321 * lisp.h:
7322 * keyboard.c:
7323 * image.c:
7324 * fringe.c:
7325 * frame.h:
7326 * frame.c:
7327 * fontset.c:
7328 * font.h:
7329 * font.c:
7330 * fns.c:
7331 * fileio.c:
7332 * emacs.c:
7333 * dispnew.c:
7334 * dispextern.h:
7335 * config.in:
7336 * atimer.c:
2ae37cf0 7337 * Makefile.in: Remove code for Carbon.
aac0c6e3 7338
f0131492 73392008-07-26 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
aac0c6e3
MR
7340
7341 * macterm.c (XDrawLine) [USE_MAC_IMAGE_IO]: Remove spurious return.
7342
73432008-07-26 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
7344
7345 * macterm.h (kCGBitmapByteOrder32Host): New define for
7346 non-universal SDKs.
7347
7348 * image.c (mac_create_cg_image_from_image, image_load_image_io)
7349 [USE_MAC_IMAGE_IO]: Remove conditionals for kCGBitmapByteOrder32Host.
7350
7351 * macterm.c (XDrawLine, XCreatePixmapFromBitmapData)
7352 [USE_MAC_IMAGE_IO]: Remove conditionals for kCGBitmapByteOrder32Host.
7353
73542008-07-26 David Robinow <drobinow@gmail.com> (tiny change)
7355
7356 * w32inevt.c: Include dispextern.h.
7357
73582008-07-26 Andreas Schwab <schwab@suse.de>
7359
7360 * print.c (print_object): Fix off-by-one in last change.
7361
73622008-07-25 Juanma Barranquero <lekktu@gmail.com>
7363
7364 * term.c (syms_of_term): Don't initialize default_orig_pair,
7365 default_set_foreground and default_set_background on Windows.
7366
73672008-07-25 Jason Rumney <jasonr@gnu.org>
7368
7369 * w32uniscribe.c (uniscribe_shape): Pass NULL for control arg to
7370 ScriptItemize. Clean up return value checking. Remove unused
7371 variables.
7372 (uniscribe_encode_char): Encode non-BMP characters with uniscribe
7373 shaping engine.
7374
7375 * w32font.c (w32font_has_char): Handle the case where we can't
7376 determine the script for a character.
7377
73782008-07-25 Chong Yidong <cyd@stupidchicken.com>
7379
7380 * term.c (syms_of_term): Initialize default_orig_pair,
7381 default_set_foreground, and default_set_background.
7382
7383 * getloadavg.c (nl): Rename to name_list to avoid ncurses.h
7384 clash (bug#86).
7385 (getloadavg): Callers changed.
7386
7387 * image.c (svg_load_image): Fix last change.
7388 (svg_load_image): Use rsvg_handle_get_dimensions to check that
7389 image size is valid. Use g_object_unref instead of deprecated
7390 rsvg_handle_free to free rsvg handle.
7391 (x_from_xcolors): Don't initialize pixmap (silence compiler).
7392
73932008-07-25 Jason Rumney <jasonr@gnu.org>
7394
7395 * w32font.c (w32font_encode_char): Encode characters outside BMP as
7396 surrogates before looking up glyph index.
7397 (w32font_text_extents): Encode as surrogates if falling back to
7398 functions that need UTF-16 wide chars.
7399
7400 * w32uniscribe.c (uniscribe_encode_char): Encode characters outside
7401 BMP as surrogates before looking up glyph index.
7402
74032008-07-25 Chong Yidong <cyd@stupidchicken.com>
7404
7405 * image.c (svg_load_image): Check for failure in return value of
7406 rsvg_handle_get_pixbuf. Free rsvg handle when done.
7407
74082008-07-25 Jason Rumney <jasonr@gnu.org>
7409
7410 * w32font.c (Fx_select_font): Reverse sense of second arg.
7411
74122008-07-24 Stefan Monnier <monnier@iro.umontreal.ca>
7413
7414 * syntax.c (struct lisp_parse_state, char_quoted, inc_bytepos)
7415 (dec_bytepos, find_defun_start): Use EMACS_INT for buffer positions.
7416
7417 * puresize.h (PURESIZE_CHECKING_RATIO): New macro.
7418 (PURESIZE): Use it.
7419
74202008-07-24 Dan Nicolaescu <dann@ics.uci.edu>
7421
7422 * m/amdx86-64.h (HAVE_LIB64_DIR): Consolidate ifdefs.
7423 * m/alpha.h (TEXT_END):
7424 * m/ibmrs6000.h (TEXT_END):
7425 * m/macppc.h (TEXT_END):
7426 * s/darwin.h (TEXT_END):
7427 * s/msdos.h (TEXT_END): Remove, unused.
7428 * s/gnu-linux.h (BSD_PGRPS): Add a comment.
7429 * s/cygwin.h: Remove comment.
7430
7431 * ecrt0.c (NODOT_GLOBAL_START): Remove code, unused.
7432 (DOT_GLOBAL_START): Remove conditional, redundant for CRT0_DUMMIES.
7433 * m/intel386.h (DOT_GLOBAL_START):
7434 * m/vax.h (DOT_GLOBAL_START): Remove, redundant with CRT0_DUMMIES.
7435 (USG): Remove, file not used on USG platforms.
7436
7437 * Makefile.in (HAVE_X11): Remove empty #else.
7438
74392008-07-24 Andreas Schwab <schwab@suse.de>
7440
7441 * fileio.c (Finsert_file_contents): Properly adjust undo list
7442 after format conversion.
7443
74442008-07-24 Jan Djärv <jan.h.d@swipnet.se>
7445
7446 * gtkutil.c (xg_get_font_name): Cast w to GTK_FONT_SELECTION_DIALOG.
7447 (menu_nav_ended): Remove.
7448 (create_menus): Remove signal connect for menu_nav_ended.
7449 (xg_update_menubar): Also take deactivate_cb as parameter, pass it to
7450 create_menus.
7451 (xg_modify_menubar_widgets): Pass deactivate_cb to xg_update_menubar.
7452
74532008-07-23 Jason Rumney <jasonr@gnu.org>
7454
7455 * w32font.c (w32_enumfont_pattern_entity): Return height consistent
7456 with opened font.
7457 (w32font_open): Set font type to gdi.
7458
7459 * w32uniscribe.c (uniscribe_open): Set font type to uniscribe.
7460
74612008-07-23 Dan Nicolaescu <dann@ics.uci.edu>
7462
7463 * s/usg5-4.h (ADDR_CORRECT): Remove, unused.
7464 * unexaix.c (ADDR_CORRECT): Remove conditional, the only user
7465 defines it.
7466 * unexec.c (ADDR_CORRECT): Define unconditionally.
7467
7468 * m/ibmrs6000.h (C_SWITCH_MACHINE): Remove.
7469
7470 * unexec.c: Remove code depending on !COFF and USG, the file is
7471 not used for such systems.
7472
7473 * s/netbsd.h (A_TEXT_OFFSET, A_TEXT_SEEK):
7474 * s/freebsd.h (A_TEXT_OFFSET, A_TEXT_SEEK): Remove, unused.
7475 (LD_SWITCH_SYSTEM_1): Remove, update users.
7476
7477 * s/darwin.h (DATA_END):
7478 * m/intel386.h (DATA_END):
7479 * m/ibmrs6000.h (DATA_END):
7480 * m/alpha.h (DATA_END): Remove, unused.
7481
7482 * config.in: Regenerate.
7483 * s/ms-w32.h (subprocesses): Define unconditionally.
7484 * s/template.h (subprocesses): Update comment.
7485 * s/vms.h (subprocesses):
7486 * s/usg5-4.h (subprocesses):
7487 * s/hpux10-20.h (subprocesses):
7488 * s/gnu-linux.h (subprocesses):
7489 * s/cygwin.h (subprocesses):
7490 * s/bsd-common.h (subprocesses):
7491 * s/aix4-2.h (subprocesses):
7492 * s/darwin.h (subprocesses): Do not define, defined by default now.
7493
7494 * Makefile.in (C_SWITCH_SITE, LD_SWITCH_SITE): Remove, unused.
7495 Remove all references.
7496 (temacs): Add GNUstep specific ld flags.
7497
7498 * nsterm.m (syms_of_nsterm): Provide ns, not ns-windowing,
7499 similarly to what X does.
7500
75012008-07-22 Adrian Robert <Adrian.B.Robert@gmail.com>
7502
7503 * nsfns.m (x-list-fonts): Remove.
7504 (syms_of_nsfns): Drop the x-list-fonts declaration.
7505 * nsterm.m: Get rid of remaining "//" comments.
7506
75072008-07-22 Chong Yidong <cyd@stupidchicken.com>
7508
7509 * xselect.c (Fx_rotate_cut_buffers_internal): Doc fix.
7510
7511 * nsselect.m (Fns_selection_exists_p, Fns_selection_owner_p)
7512 (Fx_get_selection_internal, Fns_rotate_cut_buffers_internal)
7513 (Fns_own_selection_internal, Fx_disown_selection_internal)
7514 (Fns_get_cut_buffer_internal, Fns_store_cut_buffer_internal):
7515
7516 * nsmenu.m (Fns_reset_menu, Fx_popup_menu): Change to use 'doc: /*
7517 ... */' style of docstrings. Doc fixes.
7518
75192008-07-22 Dan Nicolaescu <dann@ics.uci.edu>
7520
7521 * terminfo.c (UP, BC, PC): Undo previous change.
7522
7523 * nsfns.m: Rename ns prefixed functions/variables to the
7524 corresponding x versions. Update references.
7525
75262008-07-22 Stefan Monnier <monnier@iro.umontreal.ca>
7527
7528 * syntax.c (char_quoted): Check "charpos > beg" before decrementing.
7529
75302008-07-22 Dan Nicolaescu <dann@ics.uci.edu>
7531
7532 * nsfns.m (x_set_menu_bar_lines, x_set_tool_bar_lines):
7533 Remove forwarding functions.
7534 (ns_set_menu_bar_lines): Rename to x_set_menu_bar_lines, make
7535 non-static.
7536 (ns_set_tool_bar_lines): Rename to x_set_tool_bar_lines, make
7537 non-static.
7538 (ns_frame_parm_handlers): Use the new names.
7539 (syms_of_nsfns): Move to the end of file.
7540
7541 * nsterm.m (syms_of_nsterm): Move to the end of file.
7542
7543 * dispnew.c (init_display): Remove code for X10.
7544
75452008-07-22 Jason Rumney <jasonr@gnu.org>
7546
7547 * w32proc.c (Fw32_long_file_name): Don't append dir separator to
7548 bare drive.
7549
75502008-07-22 Adrian Robert <Adrian.B.Robert@gmail.com>
7551
7552 * nsterm.m (syms_of_nsterm): Remove debugging println.
7553
75542008-07-22 David Reitter <david.reitter@gmail.com>
7555
7556 * nsfns.m (do_applescript, F_do_applescript): NS version of the
7557 Carbon implementation of the same functionality: execute arbitrary
7558 AppleScript code.
7559
75602008-07-21 Adrian Robert <Adrian.B.Robert@gmail.com>
7561
7562 * nsfns.m (Fx_create_frame, Fx_read_file_name, Fx_get_resource)
7563 (Fx_set_resource, Fx_set_alpha, Fx_server_max_request_size)
7564 (Fx_server_vendor, Fx_server_version, Fx_display_screens)
7565 (Fx_display_mm_height, Fx_display_mm_width)
7566 (Fx_display_backing_store, Fx_display_visual_class)
7567 (Fx_display_save_under, Fx_open_connection)
7568 (Fx_close_connection, Fx_hide_emacs, Fx_font_name)
7569 (Fx_list_colors, Fx_perform_service, Fx_color_defined_p)
7570 (Fx_color_values, Fxw_display_color_p, Fx_display_grayscale_p)
7571 (Fx_display_pixel_width, Fx_display_pixel_height)
7572 (Fx_display_usable_bounds, Fx_display_planes)
7573 (Fx_display_color_cells, Vns_icon_type_alist): Change to use 'doc: /*
7574 ... */' style of docstrings.
7575
75762008-07-21 Dan Nicolaescu <dann@ics.uci.edu>
7577
7578 * m/mips.h (LOAD_AVE_TYPE, LOAD_AVE_CVT): Do not define, not used
7579 on this platform.
7580 (mips):
7581 * m/iris4d.h (mips): Do not define.
7582 * sysdep.c (init_sys_modes): Use __mips__ instead of mips.
7583
7584 * m/ibmrs6000.h (LD_SWITCH_SITE): Remove.
7585
7586 * image.c:
7587 * nsfns.m:
7588 * nsselect.m:
7589 * nsterm.h:
7590 * nsterm.m: Rename ns prefixed functions/variables to the
7591 corresponding x versions. Update references.
7592
7593 * m/ibms390x.h (NO_REMAP): Do not undefine.
7594
7595 * m/amdx86-64.h: Use SOLARIS2 instead of sun.
7596
75972008-07-21 Chong Yidong <cyd@stupidchicken.com>
7598
7599 * nsfns.m: Change NS to Nextstep in docstrings and error messages.
7600 (Fns_create_frame, Fns_read_file_name, Fns_get_resource)
7601 (Fns_set_resource, Fns_set_alpha, Fns_server_max_request_size)
7602 (Fns_server_vendor, Fns_server_version, Fns_display_screens)
7603 (Fns_display_mm_height, Fns_display_mm_width)
7604 (Fns_display_backing_store, Fns_display_visual_class)
7605 (Fns_display_save_under, Fns_open_connection)
7606 (Fns_close_connection, Fns_hide_emacs, Fns_font_name)
7607 (Fns_list_colors, Fns_perform_service, Fns_color_defined_p)
7608 (Fns_color_values, Fxw_display_color_p, Fx_display_grayscale_p)
7609 (Fns_display_pixel_width, Fns_display_pixel_height)
7610 (Fns_display_usable_bounds, Fx_display_planes)
7611 (Fns_display_color_cells, Vns_icon_type_alist): Doc fixes.
7612
76132008-07-21 Ami Fischman <ami@fischman.org> (tiny change)
7614
7615 * print.c (print_object): Check print_depth before searching for
7616 circularities.
7617
76182008-07-21 Michael Albinus <michael.albinus@gmx.de>
7619
7620 * dbusbind.c (Fdbus_register_signal): Use sprintf + strcat instead
7621 only sprintf.
7622
76232008-07-21 Kenichi Handa <handa@m17n.org>
7624
7625 * ftfont.c (adjust_anchor): Check if DeltaValue is not NULL.
7626
76272008-07-20 Andreas Schwab <schwab@suse.de>
7628
7629 * syntax.c (find_start_pos, find_start_value)
7630 (find_start_value_byte, find_start_begv, find_defun_start)
7631 (back_comment, scan_sexps_forward): Use EMACS_INT for buffer positions.
7632
76332008-07-20 Dan Nicolaescu <dann@ics.uci.edu>
7634
7635 * s/sol2-3.h: Insert contents of s/sol2.h.
7636 (LD_SWITCH_SYSTEM): Remove redundant definition.
7637 * s/sol2.h: Remove, unused.
7638
76392008-07-20 Adrian Robert <Adrian.B.Robert@gmail.com>
7640
7641 * nsterm.m (ns_get_color): Recognize HSB,AHSB be synonyms for HSV,AHSV.
7642
76432008-07-20 Adrian Robert <Adrian.B.Robert@gmail.com>
7644
7645 * Makefile.in (ns_appdir): Fix typo in find command.
7646
76472008-07-20 Dan Nicolaescu <dann@ics.uci.edu>
7648
7649 * m/intel386.h (NO_REMAP): Do no define for USG, not used.
7650
7651 * s/usg5-4.h (LIBS_SYSTEM): Remove, system for which this was
7652 added not supported anymore.
7653
7654 * s/usg5-4-2.h (LIBS_SYSTEM):
7655 * s/sol2.h (LIBS_SYSTEM): Do not undefine.
7656
7657 * s/netbsd.h (GETPGRP_NO_ARG, N_TRELOFF):
7658 * s/lynxos.h (GETPGRP_NO_ARG):
7659 * s/hpux10-20.h (NO_SIOCTL_H):
7660 * s/gnu.h (GETPGRP_NO_ARG):
7661 * s/gnu-linux.h (NO_SIOCTL_H):
7662 * s/freebsd.h (GETPGRP_NO_ARG, N_TRELOFF):
7663 * s/cygwin.h (GETPGRP_NO_ARG):
7664 * s/irix6-5.h (LIBS_SYSTEM, GETPGRP_NO_ARG): Remove, unused.
7665 (C_DEBUG_SWITCH): Remove duplicate definition.
7666
7667 * m/ibms390.h: Remove boilerplate comments.
7668
7669 * sysdep.c (closedir): Use SOLARIS2 instead of sun && USG5_4.
7670
7671 * process.c (HAVE_SERIAL): Consolidate ifdefs.
7672 (wait_reading_process_output): Remove code for SunOS, platform not
7673 supported anymore. Use SOLARIS2 instead of sun.
7674
76752008-07-19 Adrian Robert <Adrian.B.Robert@gmail.com>
7676
7677 * font.c (font_open_by_name): Under NS, default lface height to zero.
7678 (font_open_for_lface): Under NS, set size based on frame fontsize.
7679 * nsterm.m (EmacsView-changeFont:): Remove some commented code.
7680 * frame.c (x_set_frame_parameters): Remove HAVE_NS ifdef.
7681
76822008-07-19 Adrian Robert <Adrian.B.Robert@gmail.com>
7683
7684 * nsterm.m (ns_antialias_text, ns_use_qd_smoothing)
7685 (ns_use_system_highlight_color): Switch these from DEFVAR_BOOL to
7686 DEFVAR_LISP and change all code accordingly to use Qt/Qnil instead of
7687 YES/NO.
7688 * nsterm.h (prevUseHighlightColor): Make a Lisp_Object.
7689 * nsfont.m (nsfont_draw): Treat ns_use_qd_smoothing as Lisp_Object.
7690 * Makefile.in (clean): Clear out build destination dir.
7691
76922008-07-19 Adrian Robert <Adrian.B.Robert@gmail.com>
7693
7694 * Makefile.in (nsgui.h-related dependencies): Remove abbrev, xfns,
7695 xterm, xselect.
7696 * lisp.h: Remove declaration of hash_remove.
7697 * nsgui.h: Remove redefinitions of hash_remove.
7698 * fns.c (hash_remove): Rename to hash_remove_from_table.
7699
77002008-07-19 Seiji Zenitani <zenitani@mac.com>
7701
7702 * nsfont.m (nsfont_fmember_to_entity, nsfont_make_fontset_for_font):
7703 strdup() the family UTF8String before modifying it.
7704
77052008-07-19 Adrian Robert <Adrian.B.Robert@gmail.com>
7706
7707 * nsterm.m (ns_maybe_dumpglyphs_background): Compare result from
7708 NS_FACE_BACKGROUND with 0 instead of nil.
7709 * nsfont.m (nsfont_draw): Same.
7710
77112008-07-19 Chong Yidong <cyd@stupidchicken.com>
7712
7713 * nsfns.m (ns_set_background_color): Fix crash.
7714
77152008-07-18 Chong Yidong <cyd@stupidchicken.com>
7716
7717 * Makefile.in (SOME_MACHINE_LISP): Remove ns-carbon-compat.elc.
7718
77192008-07-18 Dan Nicolaescu <dann@ics.uci.edu>
7720
7721 * puresize.h (BASE_PURESIZE): Increase to 1240000.
7722
77232008-07-17 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
7724
7725 * gtkutil.c: Include <config.h> instead of "config.h".
7726
7727 * lisp.h (Foverlay_buffer): Add EXFUN.
7728
7729 * process.c (create_process) [!WINDOWSNT && FD_CLOEXEC]: Wait for
7730 child process to complete child_setup. Undo 2005-09-21 change.
7731
7732 * s/darwin.h: Mention setsid after vfork.
7733
77342008-07-17 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
7735
7736 * Makefile.in (frame.o, keyboard.o, xdisp.o, xfaces.o):
7737 Depend on macgui.h.
7738
7739 * macfns.c (Fx_server_version): Don't use gestaltSystemVersionMajor,
7740 gestaltSystemVersionMinor, or gestaltSystemVersionBugFix.
7741
7742 * macterm.c (keycode_to_xkeysym_table): Add entries for f17, f18,
7743 and f19.
7744 [MAC_OSX] (fn_keycode_to_keycode_table): Likewise.
7745
7746 * macterm.h (gestaltSystemVersionMajor, gestaltSystemVersionMinor)
7747 (gestaltSystemVersionBugFix) [MAC_OS_X_VERSION_MAX_ALLOWED < 1040]:
7748 Remove enumerators.
7749
7750 * mactoolbox.c [USE_MAC_TSM] (mac_handle_text_input_event):
7751 Check if FACE_FROM_ID returns NULL.
7752
77532008-07-17 David Robinow <drobinow@gmail.com> (tiny change)
7754
7755 * w32inevt.c (change_frame_size): Remove extern declaration.
7756 (resize_event, maybe_generate_resize_event): Pass SAFE arg to
7757 change_frame_size.
7758
77592008-07-17 Adrian Robert <Adrian.B.Robert@gmail.com>
7760
7761 * getloadavg.c: Revert last change (2008-07-15).
7762
77632008-07-17 Adrian Robert <Adrian.B.Robert@gmail.com>
7764
7765 * Makefile.in: Replace emacsapp, emacsbindir, emacsappsrc variables
362654a6 7766 set here with ns_appdir, ns_appresdir, ns_appbindir, ns_appsrc set
aac0c6e3
MR
7767 from configure.
7768
77692008-07-17 Dan Nicolaescu <dann@ics.uci.edu>
7770
7771 * s/sol2.h:
7772 * s/sol2-4.h: Reorganize conditionals.
7773
7774 * ecrt0.c: Remove code depending on m68000, not used anymore.
7775
7776 * fns.c (hash_remove): Make static.
7777 * lisp.h (hash_remove): Don't prototype.
7778
7779 * m/ibmrs6000.h:
7780 * m/ibms390x.h:
7781 * m/macppc.h: Remove boilerplate comments.
7782
7783 * m/sparc.h (A_TEXT_OFFSET, A_TEXT_SEEK): Remove, only used on
7784 Solaris, which does not need them.
7785
7786 * m/vax.h: Remove comments about unsupported systems.
7787
7788 * s/darwin.h: Reorganize ifdefs.
7789
77902008-07-17 Andreas Schwab <schwab@suse.de>
7791
7792 * s/cygwin.h (LIB_STANDARD_LIBSRC): Don't define.
7793
77942008-07-17 Stefan Monnier <monnier@iro.umontreal.ca>
7795
7796 Use SDATA. Follow coding convention of placing operators at
7797 beginning of next line rather than end of previous line, and placing
7798 spaces around infix operators.
7799
7800 * Makefile.in: Undef LIB_STANDARD before defining it to silence warning
7801 in case it was defined already.
7802 USE @GNUSTEP_MAKEFILES@ rather than envvars.
7803 * nsterm.m (ns_term_init): Pass Qt and Qnil rather than YES/NO to
7804 ns_default.
7805 (applicationShouldTerminate, setValuesFromPanel): Use EQ to compare
7806 Lisp_Objects.
7807 * nsterm.h (Fx_display_grayscale_p, Fx_display_planes)
7808 (ns_defined_color, ns_color_to_lisp): Declare.
7809 * nsselect.m (ns_handle_selection_request, ns_handle_selection_clear)
7810 (Fns_own_selection_internal): Make the big ugly hack more explicit, so
7811 it's accepted even with USE_LISP_UNION_TYPE.
7812 * nsmenu.m (ns_update_menubar): Use EQ to compare Lisp_Objects.
7813 (update_frame_tool_bar): Remove apparently obsolete tests for
7814 non-integerness of f->tool_bar_lines.
7815 (windowShouldClose, addButton, clicked, runDialogAt): Make the big ugly
7816 hack more explicit, so it's accepted even with USE_LISP_UNION_TYPE.
7817 * nsfont.m (nsfont_driver): Use just 0 rather than an invalid cast.
7818 (nsfont_open): Don't confuse NULL for Qnil.
7819 * nsfns.m (ns_implicitly_set_icon_type): Use EQ to compare Lisp_Objects.
7820 * menu.h (find_and_call_menu_selection):
7821 * menu.c (find_and_call_menu_selection): Use just int for vector size.
7822 (find_and_return_menu_selection): Always return something.
7823 * frame.h: Include dispextern.h for Display_Info.
7824 (display_x_get_resource): Declare.
7825
78262008-07-16 Adrian Robert <Adrian.B.Robert@gmail.com>
7827
7828 * syntax.c: Remove stdio.h include accidentally introduced in
7829 Emacs.app commit.
7830 * Makefile.in: Change GNUSTEP to NS_IMPL_GNUSTEP, COCOA to
7831 NS_IMPL_COCOA.
7832 * keyboard.c (handle_async_input, input_available_signal): Remove
7833 BSD4_1 conditional code, introduced accidentally in Emacs.app commit.
7834
78352008-07-16 Stefan Monnier <monnier@iro.umontreal.ca>
7836
7837 * nsterm.m (lisp_to_mod): Use parse_solitary_modifier instead.
7838 (ns_lisp_to_color): Don't mess with internal Lisp data fields.
7839 (ns_term_init, ns_term_shutdown, initFrameFromEmacs, ns_list_fonts):
7840 Use SDATA.
7841
7842 * keymap.c: Remove all NS-specific code.
7843 (where_is_preferred_modifier, Vwhere_is_preferred_modifier): New vars.
7844 (preferred_sequence_p): Rename from ascii_sequence_p; pay attention to
7845 where_is_preferred_modifier, return a different value depending on how
7846 preferred is the binding.
7847 (where_is_internal): Adjust accordingly.
7848 (Fwhere_is_internal): Refresh where_is_preferred_modifier.
7849 Adjust to new preferred_sequence_p.
7850 (syms_of_keymap): Declare `where-is-preferred-modifier'.
7851 * keyboard.c (parse_solitary_modifier): Not static any more.
7852 * keyboard.h (parse_solitary_modifier): Declare.
7853
78542008-07-16 Andreas Schwab <schwab@suse.de>
7855
7856 * Makefile.in (SOME_MACHINE_LISP): Remove easy-mmode, fix spelling
7857 of easymenu.
7858
78592008-07-16 Chong Yidong <cyd@stupidchicken.com>
7860
7861 * xdisp.c (move_it_in_display_line): Account for word wrap, so
7862 that we don't move off the line.
7863
78642008-07-16 Stefan Monnier <monnier@iro.umontreal.ca>
7865
7866 * keyboard.c (Qsuper): Remove.
7867 (parse_menu_item): Don't call where_is_internal specially for NS.
7868
78692008-07-16 Dan Nicolaescu <dann@ics.uci.edu>
7870
7871 * s/gnu-linux.h: Remove boilerplate comments.
7872
7873 * m/alpha.h (__ELF__): Consolidate conditions.
7874
7875 * m/m68k.h (linux): Use GNU_LINUX instead.
7876 Remove boilerplate comments.
7877
7878 * m/intel386.h: Undo refactoring from previous change.
7879 (LIB_STANDARD): All systems that define USG define LIB_STANDARD
7880 too, remove dead code.
7881 (linux): Use GNU_LINUX instead.
7882
78832008-07-16 Jason Rumney <jasonr@gnu.org>
7884
7885 * w32gui.h: Repeat 26 June changes lost by last change.
7886
78872008-07-16 Dan Nicolaescu <dann@ics.uci.edu>
7888
7889 * systty.h: Remove code for Aix on 386, unsupported platform.
7890
7891 * s/ms-w32.h: Remove boilerplate comments.
7892 (fcloseall, fgetchar, flushall, fputchar, getw, putw): Remove, unused.
7893
7894 * s/gnu-linux.h (TERM): Remove support.
7895 (HAVE_SYSVIPC): Remove, unused.
7896 (A_TEXT_OFFSET, A_TEXT_SEEK, ADJUST_EXEC_HEADER): Remove, not used
7897 for this system.
7898
7899 * process.c: Remove support for IRIS, unused.
7900 Remove support for TERM, not relevant anymore.
7901
7902 * unexalpha.c (DEFAULT_ENTRY_ADDRESS): Remove, replace the only
7903 used with the definition.
7904
7905 * s/aix4-2.h (static): Do not undef.
7906
7907 * m/ibmrs6000.h: Remove code depending on USG5_4, this file is
7908 only used on Aix.
7909 (HAVE_SYSVIPC): Remove, unused.
7910
7911 * m/hp800.h (CANNOT_DUMP): Do not undef.
7912
7913 * m/alpha.h: Fix comment.
7914
7915 * s/usg5-4.h (HAVE_SYSVIPC): Remove, unused.
7916 (USG_SHARED_LIBRARIES): Remove, only used in unexec.c which is not
7917 used by this configuration.
7918 * emacs.c: Remove code depending on USG_SHARED_LIBRARIES.
7919 * unexec.c: Remove code depending on HPUX and
7920 USG_SHARED_LIBRARIES, not used with this file. Remove code
7921 depending on IRIS, unused. Remove if 0-ed code.
7922
7923 * s/template.h: Remove comments about static.
7924
7925 * sysdep.c: Remove code depending on NEED_PTEM_H, unused.
7926 Remove if 0-ed code.
7927 (baud_convert): Don't depend on BAUD_CONVERT, all definitions the
7928 were the same as the default.
7929 * s/vms.h (BAUD_CONVERT): Remove, same as the default.
7930 Remove boilerplate comments.
7931 * s/hpux10-20.h (BAUD_CONVERT): Remove, same as the default.
7932 (HAVE_SYSVIPC): Remove, unused.
7933 (LD_SWITCH_SYSTEM_TEMACS): Simplify, hp9000s700 not supported anymore.
7934
7935 * m/ia64.h (PNTR_COMPARISON_TYPE): Remove, same as the default.
7936 Remove boilerplate comments.
7937 * m/amdx86-64.h (PNTR_COMPARISON_TYPE): Remove, same as the default.
7938 Remove boilerplate comments.
7939 * m/ibms390x.h (PNTR_COMPARISON_TYPE): Remove, same as the default.
7940 Remove boilerplate comments.
7941 * lisp.h (PNTR_COMPARISON_TYPE): Define it unconditionally.
7942
7943 * m/intel386.h (DATA_SEG_BITS): Remove definitions, only used on
7944 USG systems which do not use DATA_SEG_BITS.
7945 Refactor code. Remove boilerplate comments.
7946
7947 * m/ibms390.h:
7948 * m/m68k.h:
7949 * s/bsd-common.h:
7950 * s/cygwin.h:
7951 * s/darwin.h:
7952 * s/freebsd.h:
7953 * s/gnu.h:
7954 * s/msdos.h: Remove boilerplate comments.
7955
7956 * m/iris4d.h: Remove boilerplate comments and code for systems that
6873acca 7957 do not use this file.
aac0c6e3
MR
7958 (IRIS_4D): Remove, unused.
7959
7960 * m/mips.h: Remove boilerplate comments and code for systems that
6873acca 7961 do not use this file.
aac0c6e3
MR
7962 (SIGN_EXTEND_CHAR):
7963 * m/arm.h (SIGN_EXTEND_CHAR): Remove, unused.
7964 * unexmips.c: Remove file, unused.
7965
7966 * editfns.c (Fuser_full_name): Replace the only use of
7967 USER_FULL_NAME with its value.
7968 * config.in: Regenerate.
7969
79702008-07-16 David Reitter <david.reitter@gmail.com>
7971
7972 * Makefile.in: Add ns-win, ns-carbon-compat, easy-mmode and
7973 easy-menu to SOME_MACHINE_LISP for the new NeXTstep port.
7974
79752008-07-16 Glenn Morris <rgm@gnu.org>
7976
7977 * emacs.c (system-type): Doc fix.
7978
79792008-07-15 Stefan Monnier <monnier@iro.umontreal.ca>
7980
7981 * keyboard.c (parse_menu_item): Don't use cachelist, even under NS.
7982 If the cache doesn't work, let's fix it, rather than work around it.
7983
79842008-07-15 Adrian Robert <Adrian.B.Robert@gmail.com>
7985
7986 * Makefile.in: Correct additions for nsfont.o in last commit.
7987 * nsfont.m: New file (forgot last commit).
7988
79892008-07-15 Chris Hall <chris@web.workinglinux.com> (tiny change)
7990
7991 * callproc.c (set_initial_environment): Initialize
7992 Vprocess_environment under CANNOT_DUMP (fixes crash when
7993 batch-compiling for bootstrap).
7994
79952008-07-15 Chris Hall <chris@web.workinglinux.com> (tiny change)
7996 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
7997
7998 (make_initial_frame): Call init_frame_faces(f) in CANNOT_DUMP case --
7999 fix crash due to different init order.
8000
80012008-07-15 Adrian Robert <Adrian.B.Robert@gmail.com>
8002
8003 Changes and additions for NeXTstep windowing system (Cocoa and
8004 GNUstep) support.
8005
8006 * Makefile.in:
8007 * config.in: Support defines and build commands for NS port.
8008 * blockinput.h (BLOCK_INPUT, UNBLOCK_INPUT, TOTALLY_UNBLOCK_INPUT)
8009 (UNBLOCK_INPUT_TO): Don't use under NS unless EXPERIMENTAL_CONTROL_G.
8010 * dispextern.h: Include nsgui.h and add needed typedefs under NS
8011 windowing.
8012 (struct face): Add synth_ital field.
8013 * dispnew.c: Include nsterm.h when compiling under NS windowing.
8014 (init_display): Initialize Vinitial_window_system to "ns" when so
8015 compiled.
8016 * emacs.c: Include GSConfig.h when compiling under GNUstep.
8017 (display_arg): Use under NS.
8018 (main): Under NS, allocate autorelease pool and handle command line
8019 args. Move syms_of_xmenu() call under #ifdef HAVE_X_WINDOWS.
8020 (standard_args): Add NS-specific args.
8021 (shut_down_emacs): Shut down NS terminal if compiled under NS.
8022 * font.c (DEFAULT_ENCODING): New variable.
8023 (font_find_for_lface): Use it.
8024 (syms_of_font): Load syms_of_nsfont under NS.
8025 * font.h: Declare nsfont_driver when compiled under NS.
8026 * fontset.c: When compiling under NS, include nsterm.h.
8027 (fontset_from_font): Autoconstruct fontset under NS.
8028 * frame.c (various): Under NS, include nsterm.h, add Qns window system
8029 symbol, document and use it.
8030 (do_switch_frame): When for_deletion under Cocoa, add
8031 Fraise_frame(Qnil).
8032 (x_set_frame_parameters): Ensure font attribute changes are picked up.
8033 (x_get_arg): Allow "yes" and "no" as boolean values.
8034 (syms_of_frame): Declare Qns. Init Vdefault_frame_scroll_bars to
8035 Qright under Cocoa.
8036 (focus-follows-mouse): Default to 0 under NS.
8037 * frame.h (enum output_method): Add output_ns.
8038 (external_tool_bar, external_menu_bar, FRAME_EXTERNAL_TOOLBAR)
8039 (FRAME_EXTERNAL_MENU_BAR): Use under NS.
8040 (FRAME_WINDOW_P): NS-specific definition.
8041 * fringe.c (max_used_fringe_bitmap): Make public.
8042 * getloadavg.c (mach/mach.h): Include it under NeXT descendant OS's.
8043 (getloadavg): Use NeXT code under descendant OS's.
8044 * image.c (includes and header section, x_create_bitmap_from_data)
8045 (x_create_bitmap_from_file, free_bitmap_record, image_background)
8046 (image_background_transparent, x_clear_image_1)
8047 (x_create_x_image_and_pixmap, x_destroy_x_image, x_put_x_image)
8048 (Create_Pixmap_From_Bitmap_Data, xpm_load_image, lookup_rgb_color)
8049 (x_to_xcolors, x_from_xcolors, x_disable_image)
8050 (x_build_heuristic_mask, syms_of_image): Add NS support parallel to
8051 other GUIs, including XPM support using code originally written for
8052 Carbon GUI.
8053 (png_load, jpeg_load, tiff_load, gif_load): Add implementations
8054 using NS API.
8055 (image_ascent): Use font metrics macros instead of direct struct field
8056 access.
8057 * keyboard.c (includes): Add nsterm.h when compiling under NS.
8058 (kbd_buffer_get_event): Handle NS as other GUI windowing systems.
8059 Also, handle NS as GTK for menu bar purposes.
8060 (make_lispy_event): Handle NS as other GUI windowing systems, and as X
8061 toolkit where they differ.
8062 (parse_menu_item): Prefer keybindings using 'super' modifier. Also,
8063 use cachelist, still needed under NS.
8064 * keyboard.h (ENCODE_MENU_STRING, XtPointer, Boolean): Handle as NTGUI.
8065 (struct widget_value): Define it here for menu.c.
8066 * keymap.c (includes): Include modifier internals.
8067 (lisp_to_mod, modifier_sequence_p): New functions, compiled only under
8068 NS.
8069 (where_is_internal, Fwhere_is_internal): When compiled under NS, add
8070 support for preferring sequences using certain modifiers, specified by
8071 the FIRSTONLY argument.
8072 * lisp.h (hash_remove): Rename to avoid name clash when compiling
8073 under NS GNUstep implementation.
8074 (USE_LSB_TAG): Use it under Cocoa when compiling under NS.
8075 * lread.c (init_lread): Treat NS as HAVE_CARBON for turn_off_warning.
8076 * menu.c: Include nsterm.h under NS.
8077 (single_menu_item, parse_single_submenu, xmalloc_widget_value)
8078 (free_menubar_widget_tree_value, update_submenu_strings)
8079 (find_and_call_menu_selection): Treat NS as X and NT.
8080 (find_and_return_menu_selection): New function, used for popup menus.
8081 * nsgui.h:
8082 * nsterm.h:
8083 * nsfns.m:
8084 * nsimage.m:
8085 * nsmenu.m:
8086 * nsselect.m:
8087 * nsterm.m: New files.
8088 * process.c (wait_reading_process_output): Under NS, call ns_select()
8089 instead of plain select().
8090 * syntax.c (char_quoted): Under NS, avoid a crash when called near
8091 beginning of buffer.
8092 * sysselect.h (init_process): Rename when compiling under Cocoa to
8093 avoid name conflict.
8094 * termhooks.h (display_info): Add ns_display_info to union.
8095 * terminal.c (Fterminal_live_p): Add ns to terminal types.
8096 * terminfo.c (UP, BC, PC): Don't declare when compiling under NS in
8097 COCOA environment.
8098 * unexnext.c: Update to work with mach API on Mac OS X, and to use new
8099 unexec() signature. (Note, this will dump, but the resulting file
8100 crashes; unexosx is used instead; keeping around for reference and
8101 possible aid in getting dump working under GNUstep.)
8102 * w32gui.h (button_type, widget_value): Remove definitions (now in
8103 keyboard.h).
8104 * window.c: Include nsterm.h when compiling under NS.
8105 * xdisp.c (includes): Include nsterm.h when compiling under NS.
8106 (set_frame_menubar, update_menu_bar, display_menu_bar): Handle NS as
8107 other GUI windowing systems.
8108 (update_tool_bar, redisplay_tool_bar, redisplay_window): Handle NS as
8109 GTK.
8110 (x_consider_frame_title): Under NS, set icon type and frame
8111 modified-state indicator; use ns_set_name_as_filename() when using
8112 formatted title.
8113 (update_window_cursor): Make public when compiling under NS.
8114 (display_hourglass_p, syms_of_xdisp, hourglass_shown_p)
8115 (hourglass_atimer, Vhourglass_delay
8116 * xfaces.c (header section, init_frame_faces, clear_font_table)
8117 (defined_color, unload_color, x_face_list_fonts)
8118 (prepare_face_for_display): Add NS support parallel to other GUIs.
8119 Emulate GCs like other non-X GUIs.
8120 (split_font_name): Don't lowercase font name under NS.
8121 (merge_face_ref, Finternal_set_lisp_face_attribute): Support stippling
8122 under NS.
8123 * s/darwin.h: Add support for compilation under NS.
8124
81252008-07-15 Jason Rumney <jasonr@gnu.org>
8126
8127 * w32fns.c (Fx_create_frame): Remove duplicate unwind_protect.
8128 (w32_show_hourglass): Rename from show_hourglass.
8129 (w32_hide_hourglass): Rename from hide_hourglass.
8130 (DEFAULT_HOURGLASS_DELAY): Revert from last change.
8131 (Vhourglass_delay): Declare extern.
8132 (hourglass_started): Remove.
8133
8134 * xdisp.c (Vhourglass_delay): Remove static.
8135 (hourglass_started, start_hourglass, cancel_hourglass):
8136 Don't include these versions on WINDOWSNT.
8137
81382008-07-15 Adrian Robert <Adrian.B.Robert@gmail.com>
8139
8140 * dispextern.h (hourglass_shown_p, hourglass_atimer): New extern
8141 variables (formerly in xfns.c).
8142 (show_hourglass, hide_hourglass): New prototypes (same).
8143 * xdisp.c (display_hourglass_p, hourglass_shown_p, hourglass_atimer)
8144 (Vhourglass_delay, DEFAULT_HOURGLASS_DELAY): New variables (formerly
8145 in xfns.c).
8146 (syms_of_xdisp): Declare/initialize display-hourglass,
8147 hourglass-delay. Initialize hourglass_atimer, hourglass_shown_p.
8148 (hourglass_started, start_hourglass, cancel_hourglass): New functions,
8149 formerly in xfns.c.
8150 * xfns.c (display_hourglass_p, hourglass_atimer, hourglass_shown_p)
8151 (Vhourglass_delay, DEFAULT_HOURGLASS_DELAY, hourglass_started)
8152 (start_hourglass, cancel_hourglass): Remove.
8153 (show_hourglass, hide_hourglass): Remove prototypes and static
8154 modifiers.
8155 (syms_of_xfns): Remove display-hourglass, hourglass-delay,
8156 hourglass_atimer, hourglass_shown_p declaration/initialization.
8157 * macfns.c (display_hourglass_p, hourglass_atimer, hourglass_shown_p)
8158 (Vhourglass_delay, DEFAULT_HOURGLASS_DELAY, hourglass_started)
8159 (start_hourglass, cancel_hourglass): Remove.
8160 (show_hourglass, hide_hourglass): Remove prototypes and static
8161 modifiers.
8162 (syms_of_macfns): Remove display-hourglass, hourglass-delay,
8163 hourglass_atimer, hourglass_shown_p declaration/initialization.
8164 * w32fns.c (display_hourglass_p, Vhourglass_delay)
8165 (DEFAULT_HOURGLASS_DELAY): Remove.
8166 (syms_of_w32fns): Remove display-hourglass, hourglass-delay,
8167 hourglass_shown_p declaration/initialization.
8168
81692008-07-14 Jason Rumney <jasonr@gnu.org>
8170
8171 * w32fns.c (w32_get_arg): Remove wrapper function.
8172 (w32_createwindow, x_icon, x_create_tip_frame): Use x_get_arg
8173 directly.
8174 (Fx_create_frame): Sync with xfns.c. Use x_get_arg directly.
8175
81762008-07-14 Kenichi Handa <handa@m17n.org>
8177
8178 * xfont.c (xfont_open): Add workaround for X's bug.
8179
81802008-07-14 Emanuele Giaquinta <emanuele.giaquinta@gmail.com> (tiny change)
8181
8182 * fontset.c: Include <stdio.h> unconditionally.
8183
81842008-07-13 Michael Albinus <michael.albinus@gmx.de>
8185
8186 * dbusbind.c (Fdbus_register_signal): Allow also signal arguments
8187 for filtering.
8188
81892008-07-13 Dan Nicolaescu <dann@ics.uci.edu>
8190
8191 * s/vms.h: Use __GNUC__ instead of _GNUC_.
8192
8193 * m/macppc.h:
8194 * m/alpha.h: Use GNU_LINUX instead of LINUX. Reorganize conditionals.
8195
8196 * m/ibms390x.h (XINT, XUINT): Don't define, same as the default
8197 (SPECIAL_EMACS_INT):
8198 * m/ia64.h (SPECIAL_EMACS_INT):
8199 * m/amdx86-64.h (SPECIAL_EMACS_INT):
8200 * s/gnu.h (NLIST_STRUCT):
8201 * s/aix4-2.h (X11R5_INHIBIT_I18N):
8202 * s/gnu-linux.h (LINUX):
8203 * s/msdos.h (HAVE_FACES):
8204 * s/ms-w32.h (HAVE_FACES): Don't define, unused.
8205
8206 * systty.h:
8207 * sysdep.c (setup_pty): Don't depend on SYSV_PTYS, it is not used
8208 anymore.
8209
82102008-07-12 Dan Nicolaescu <dann@ics.uci.edu>
8211
8212 * syswait.h: Remove old if 0 code. Do not define WAITTYPE, it was
8213 always defined as int.
8214
8215 * s/netbsd.h (HAVE_UNION_WAIT, HAVE_WAIT_HEADER, WAIT_USE_INT):
8216 * s/gnu.h (HAVE_WAIT_HEADER, WAIT_USE_INT, HAVE_UNION_WAIT):
8217 * s/gnu-linux.h (HAVE_WAIT_HEADER):
8218 * s/freebsd.h (HAVE_WAIT_HEADER):
8219 * s/bsd-common.h (HAVE_UNION_WAIT):
8220 * s/aix4-2.h (HAVE_WAIT_HEADER):
8221 * m/mips.h (HAVE_UNION_WAIT):
8222 * s/usg5-4.h (HAVE_WAIT_HEADER, WAITTYPE): Do not define, not used.
8223 (COFF, static): Do not define, they are undefined later in the file.
8224
8225 * process.c (update_status): Don't use a union.
8226 (status_convert):
8227 (sigchld_handler): Use int instead of WAITTYPE.
8228
82292008-07-12 Chong Yidong <cyd@stupidchicken.com>
8230
8231 * indent.c (Fvertical_motion): Restore hscroll before moving to
8232 goal column.
8233
82342008-07-11 Dan Nicolaescu <dann@ics.uci.edu>
8235
8236 * lisp.h: Remove left over code.
8237
82382008-07-11 Andreas Schwab <schwab@suse.de>
8239
8240 * lisp.h: Fix logic in last change.
8241
8242 * menu.h: New file.
8243 * menu.c: Include it.
8244 * xmenu.c: Likewise.
8245 * Makefile.in: Update dependencies.
8246
82472008-07-11 Kenichi Handa <handa@m17n.org>
8248
8249 * fontset.c (fontset_from_font): Cancel the previous change.
8250
82512008-07-11 Dan Nicolaescu <dann@ics.uci.edu>
8252
8253 * lisp.h:
8254 * w32heap.c:
8255 * emacs.c:
8256 * alloc.c: Replace all references of NO_UNION_TYPE with
8257 USE_LISP_UNION_TYPE.
8258
8259 * m/xtensa.h (NO_UNION_TYPE):
8260 * m/vax.h (NO_UNION_TYPE):
8261 * m/template.h (NO_UNION_TYPE):
8262 * m/sparc.h (NO_UNION_TYPE):
8263 * m/mips.h (NO_UNION_TYPE):
8264 * m/macppc.h (NO_UNION_TYPE):
8265 * m/m68k.h (NO_UNION_TYPE):
8266 * m/iris4d.h (NO_UNION_TYPE):
8267 * m/intel386.h (NO_UNION_TYPE):
8268 * m/ibms390x.h (NO_UNION_TYPE):
8269 * m/ibms390.h (NO_UNION_TYPE):
8270 * m/ibmrs6000.h (NO_UNION_TYPE):
8271 * m/ia64.h (NO_UNION_TYPE):
8272 * m/hp800.h (NO_UNION_TYPE):
8273 * m/arm.h (NO_UNION_TYPE):
8274 * m/amdx86-64.h (NO_UNION_TYPE):
8275 * m/alpha.h (NO_UNION_TYPE): Remove definition, all platform were
8276 defining it the same.
8277
82782008-07-10 Chong Yidong <cyd@stupidchicken.com>
8279
8280 * xdisp.c (move_it_to): Backtrack if past the edge of a wrapped line.
8281
82822008-07-10 Dan Nicolaescu <dann@ics.uci.edu>
8283
8284 * fileio.c:
8285 * sysdep.c
8286 * systty.h:
8287 * m/ibmrs6000.h:
8288 * m/iris4d.h:
8289 * s/aix4-2.h:
8290 * s/freebsd.h:
8291 * s/gnu-linux.h:
8292 * s/hpux10-20.h:
8293 * s/hpux11.h:
8294 * s/netbsd.h:
8295 * s/sol2-3.h:
8296 * s/sol2-4.h:
8297 * s/sol2.h:
8298 * s/usg5-4.h:
8299 * s/vms.h: Remove references to unused variables.
8300
83012008-07-10 Andreas Schwab <schwab@suse.de>
8302
8303 * ftfont.c (ftfont_resolve_generic_family): Remove foundry from
8304 pattern before matching the generic family.
8305
83062008-07-10 Dan Nicolaescu <dann@ics.uci.edu>
8307
8308 * unexec.c:
8309 * s/vms.h:
8310 * s/usg5-4-2.h:
8311 * s/sol2-5.h:
8312 * s/freebsd.h:
8313 * s/darwin.h: Remove dead code.
8314
8315 * m/template.h:
8316 * m/sparc.h:
8317 * m/mips.h:
8318 * m/m68k.h:
8319 * m/iris4d.h:
8320 * m/intel386.h:
8321 * m/ibms390x.h:
8322 * m/ibms390.h:
8323 * m/ia64.h:
8324 * m/hp800.h:
8325 * m/arm.h:
8326 * m/amdx86-64.h: Remove dead code and references to unused
8327 and compiler defined symbols.
8328
8329 * unexmips.c:
8330 * unexelf.c: Remove references to desupported systems.
8331
8332 * m/powermac.h: Remove file, it is now identical to m/macppc.h.
8333
8334 * m/powermac.h: Remove boilerplate comments.
8335 (NO_REMAP): Remove unused definition.
8336
8337 * m/macppc.h (UNEXEC, NO_TERMIO): Don't define, the s/ files
8338 define them.
8339
83402008-07-10 Kenichi Handa <handa@m17n.org>
8341
8342 * xfont.c (xfont_open): Log the reason of failure.
8343
83442008-07-09 Stefan Monnier <monnier@iro.umontreal.ca>
8345
8346 * fontset.c (fontset_get_font_group):
8347 * font.c (font_check_otf): Specify argument types.
8348
83492008-07-09 Kenichi Handa <handa@m17n.org>
8350
8351 * coding.c (detect_coding_utf_8): Set detect_info->found only when
8352 non-ASCII char is found.
8353
8354 * fontset.c (fontset_compare_rfontdef): Fix plus/minus.
8355 (reorder_font_vector): Change the arg preferred_family to font.
8356 Prefer the spec matching with font.
8357 (fontset_get_font_group): New function.
8358 (fontset_find_font): Change the format of an element of a realized
8359 fontset. Use fontset_get_font_group.
8360 (fontset_font): Try the current fontset, the default fontset, the
8361 fallbacks of the current fontset, and the fallbacks of the default
8362 fontset in this order.
8363 (face_for_char): Delete the shortcut to use the current font.
8364 (fontset_from_font): Don't set fonts for Latin in the fontset.
8365
8366 * font.h (font_make_object, font_match_p): Adjust prototypes.
8367
8368 * ftfont.h [FT_BDF_H]: Include FT_BDF_H.
8369
8370 * font.c (font_make_object): New arg entity and pixelsize.
8371 (font_check_otf_features, font_check_otf): New functions.
8372 (font_match_p): Check :lang, :script, and :otf properties.
8373
8374 * xfont.c (xfont_open): Adjust it for the change of
8375 font_make_object.
8376 (xfont_text_extents): Fix initial setting of metrics.
8377
8378 * ftfont.c (struct ftfont_info): New member index, delete member
8379 fc_charset_idx. Make the member order compatible with struct
8380 xftfont_info.
8381 (fc_charset_table): Change charset names to registry names.
8382 (ftfont_pattern_entity): Delete the args registry and
8383 fc_charset_idx. Change the value of :font-entity property
8384 to (FONTNAME . INDEX). Always set :registry property to
8385 `iso10646-1'.
8386 (struct ftfont_cache_data): New struct.
8387 (ftfont_lookup_cache): New arg for_face.
8388 (ftfont_get_fc_charset, ftfont_get_otf): New functions.
8389 (ftfont_driver): Set the member otf_capability.
8390 (ftfont_get_charset): Adjust it for the change of
8391 fc_charset_table.
8392 (OTF_TAG_SYM): New macro.
8393 (ftfont_spec_pattern): Delete the arg fc_charset_idx. Adjust it
8394 for the change of fc_charset_table.
8395 (ftfont_list): Adjust it for the change of ftfont_spec_pattern and
8396 ftfont_pattern_entity. Add FC_INDEX to objset.
8397 (ftfont_match): Adjust it for the change of ftfont_spec_pattern
8398 and ftfont_pattern_entity.
8399 (ftfont_open): Adjust it for the change of ftfont_lookup_cache,
8400 font_make_object, struct ftfont_info.
8401 (ftfont_has_char): Use ftfont_get_fc_charset.
8402 (ftfont_otf_features, ftfont_otf_capability): New functions.
8403 (ftfont_shape): Use ftfont_get_otf.
8404 (ftfont_text_extents): Fix initial setting of metrics.
8405
8406 * xftfont.c (struct xftfont_info): New member ft_size. Make the
8407 member order compatible with struct ftfont_info.
8408 (xftfont_open): Add FC_CHARSET to the pattern. Set
8409 xftfont_info->ft_size. Don't unlock the face. Check BDF
8410 properties if appropriate.
8411 (xftfont_close): Unlock the face.
8412 (xftfont_anchor_point, xftfont_shape): Deleted.
8413 (syms_of_xftfont): Don't set members anchor_point and shape of
8414 xftfont_driver.
8415
8416 * w32uniscribe.c (uniscribe_open): Adjust it for the change of
8417 font_make_object.
8418
8419 * w32font.c (w32font_open): Adjust it for the change of
8420 font_make_object.
8421 (w32font_open_internal): Don't set properties of font_object here.
8422
84232008-07-08 Chong Yidong <cyd@stupidchicken.com>
8424
8425 * macfns.c (x_create_tip_frame):
8426 * w32fns.c (x_create_tip_frame):
8427 * xfns.c (x_create_tip_frame): Pass parameter argument to
8428 face-set-after-frame-default.
8429
8430 * xfaces.c (Finternal_merge_in_global_face): Save merged
8431 attributes for the default face back into the face vector.
8432
84332008-07-08 Andreas Schwab <schwab@suse.de>
8434
8435 * fontset.h: Declare fontset_from_font. Don't declare
8436 new_fontset_from_font and fontset_from_font_name.
8437 * xterm.c: Include "fontset.h".
8438 * Makefile.in (xterm.o): Update dependencies.
8439
84402008-07-08 Glenn Morris <rgm@gnu.org>
8441
8442 * m/sparc.h: Define __sparc__ rather than sparc. (Bug#507.)
8443 * alloc.c, ecrt0.c: Use __sparc__ rather than sparc.
8444
84452008-07-07 Chong Yidong <cyd@stupidchicken.com>
8446
8447 * frame.c (Qinhibit_face_set_after_frame_default): Var deleted.
8448 (x_set_frame_parameters): Don't bind it.
8449
84502008-07-07 Juanma Barranquero <lekktu@gmail.com>
8451
8452 * w32fns.c (map_w32_filename): Declare extern.
8453
84542008-07-07 Jason Rumney <jasonr@gnu.org>
8455
8456 * w32term.c (WS_EX_LAYERED): Define if not already.
8457
84582008-07-06 Chong Yidong <cyd@stupidchicken.com>
8459
8460 * xfaces.c (set_font_frame_param): Don't try to set the font
8461 parameter if it is still unspecified in the lface.
8462
84632008-07-05 Chong Yidong <cyd@stupidchicken.com>
8464
8465 * xfaces.c (Finternal_merge_in_global_face): Don't realize default
8466 face if it didn't already exist.
8467
8468 * xdisp.c (try_window_id): Give up if word-wrapping is on.
8469
84702008-07-05 Andreas Schwab <schwab@suse.de>
8471
8472 * xdisp.c (get_it_property): Move out of HAVE_WINDOW_SYSTEM section.
8473
84742008-07-05 Chong Yidong <cyd@stupidchicken.com>
8475
8476 * xdisp.c (IT_OVERFLOW_NEWLINE_INTO_FRINGE): Turn it off if
8477 word-wrapping.
8478 (IT_DISPLAYING_WHITESPACE): New macro.
8479 (move_it_in_display_line_to): Handle MOVE_TO_X requests properly
8480 when word-wrapping. Simplify word-wrapping logic. Use correct
8481 pixel positions when saving copies of the iterator.
8482 (display_line): Use proper wrap point if the last character on a
8483 line was preceded by whitespace.
8484
84852008-07-04 Stefan Monnier <monnier@iro.umontreal.ca>
8486
8487 * Makefile.in (${etc}DOC): Depend on ${lisp} rather than ${shortlisp}.
8488
84892008-07-04 Kenichi Handa <handa@m17n.org>
8490
8491 * fns.c (Fstring_to_unibyte): Delete the arg ACCEPT-LATIN-1.
8492
8493 * lisp.h: EXFUN adjusted for the change of Fstring_to_unibyte.
8494
84952008-07-02 Jason Rumney <jasonr@gnu.org>
8496
8497 * xfns.c (syms_of_xfns): Only define x-select-font when both
2ae37cf0 8498 HAVE_FREETYPE and USE_GTK.
aac0c6e3
MR
8499
8500 * xdisp.c (next_element_from_display_vector): Move assignment out
8501 of if statement.
8502
85032008-07-02 Toru Tsuneyoshi <t_tuneyosi@hotmail.com>
8504
8505 * lisp.h (Qdelete_file, Qdelete_directory): Declare extern.
8506
8507 * fileio.c (delete_by_moving_to_trash, Qmove_file_to_trash): New vars.
8508 (syms_of_fileio): Initialize and export them.
8509 (Fdelete_directory, Fdelete_file): Optionally delete via trash.
8510
8511 * w32fns.c (FOF_NO_CONNECTED_ELEMENTS): Define if not already.
8512 (Fsystem_move_file_to_trash): New function.
8513 (syms_of_w32fns): Export it to lisp.
8514
85152008-07-01 Jason Rumney <jasonr@gnu.org>
8516
8517 * w32font.c (w32font_text_extents): Don't count overhang as part
8518 of width.
8519
85202008-06-30 Miles Bader <miles@gnu.org>
8521
8522 * dispextern.h (struct glyph, struct it, struct iterator_stack_entry):
8523 Add `avoid_cursor_p' field.
8524
8525 * xdisp.c (push_it, pop_it): Save/restore avoid_cursor_p field.
8526 (set_cursor_from_row): Skip glyphs with avoid_cursor_p set.
8527 (append_glyph, append_composite_glyph, produce_image_glyph)
8528 (append_stretch_glyph): Initialize avoid_cursor_p.
8529 (get_it_property): Rename from `get_line_height_property'.
8530 (x_produce_glyphs): Use get_it_property.
8531 (handle_line_prefix, push_display_prop): New functions.
8532 (display_line, move_it_in_display_line_to): Handle line/wrap prefixes.
8533 (Vwrap_prefix, Qwrap_prefix, Vline_prefix, Qline_prefix):
8534 New variables.
8535 (syms_of_xdisp): Initialize them.
8536
85372008-06-30 Kenichi Handa <handa@m17n.org>
8538
8539 * xftfont.c (xftfont_open): Don't call FcConfigSubstitute and
8540 XftDefaultSubstitute (they are called in XftFontMatch).
8541 (xftfont_open): Fix args to ftfont_font_format.
8542
8543 * ftfont.c (fc_charset_table): New member lang.
8544 (ftfont_resolve_generic_family): New arg pattern.
60612c8f 8545 (ftfont_spec_pattern): Check fc_charset_table[]->lang.
aac0c6e3
MR
8546 (ftfont_list): Call ftfont_resolve_generic_family with `pattern'.
8547 (ftfont_open): Fix args to ftfont_font_format.
8548 (ftfont_font_format): New arg filename.
8549
85502008-06-30 Chong Yidong <cyd@stupidchicken.com>
8551
8552 * xfaces.c (Finternal_merge_in_global_face): If default face was
8553 modified, realize it again. Update the font face attribute.
8554
85552008-06-29 Jason Rumney <jasonr@gnu.org>
8556
8557 * w32term.c (x_set_frame_alpha): Fix logic.
8558
85592008-06-29 Kenichi Handa <handa@m17n.org>
8560
8561 * fontset.c (Finternal_char_font): Return font-object instead of
8562 font-name.
8563
8564 * composite.c (get_composition_id): Fix the width calculation for TAB.
8565
85662008-06-29 Stefan Monnier <monnier@iro.umontreal.ca>
8567
8568 * indent.c (Fvertical_motion): Properly handle float column arg.
8569
85702008-06-28 Jason Rumney <jasonr@gnu.org>
8571
8572 * w32term.c (pfnGetFontUnicodeRanges): Remove unused function pointer.
8573 (pfnSetLayeredWindowAttributes): New function pointer.
8574 (w32_initialize): Initialize it when supported.
8575 (x_set_frame_alpha): New function.
8576
8577 * w32fns.c (Fx_create_frame): Initialize frame parameter `alpha'.
8578 (w32_frame_parm_handlers): Set alpha handler.
8579
8580 * frame.c (x_set_alpha) [HAVE_NTGUI]: Call x_set_frame_alpha.
8581
85822008-06-27 Jason Rumney <jasonr@gnu.org>
8583
8584 * w32fns.c (x_to_w32_font, w32_to_x_font, x_to_w32_weight)
8585 (w32_to_x_weight, w32_to_all_x_charsets): Remove obsolete functions.
8586 (w32_to_x_charset, x_to_w32_charset)
8587 (Qw32_charset_ansi, Qw32_charset_symbol, Qw32_charset_default)
8588 (Qw32_charset_shiftjis, Qw32_charset_hangeul, Qw32_charset_johab)
8589 (Qw32_charset_chinesebig5, Qw32_charset_gb2312, Qw32_charset_oem)
8590 (Qw32_charset_easteurope, Qw32_charset_turkish, Qw32_charset_baltic)
8591 (Qw32_charset_russian, Qw32_charset_arabic, Qw32_charset_greek)
8592 (Qw32_charset_hebrew, Qw32_charset_vietnamese, Qw32_charset_thai)
8593 (Qw32_charset_mac, Vw32_charset_info_alist): Move to w32font.c.
8594 (Qw32_charset_unicode): Remove.
8595 (syms_of_w32fns): Update for above changes.
8596
8597 * w32font.c (w32_to_x_charset, x_to_w32_charset)
8598 (Qw32_charset_ansi, Qw32_charset_symbol, Qw32_charset_default)
8599 (Qw32_charset_shiftjis, Qw32_charset_hangeul, Qw32_charset_johab)
8600 (Qw32_charset_chinesebig5, Qw32_charset_gb2312, Qw32_charset_oem)
8601 (Qw32_charset_easteurope, Qw32_charset_turkish, Qw32_charset_baltic)
8602 (Qw32_charset_russian, Qw32_charset_arabic, Qw32_charset_greek)
8603 (Qw32_charset_hebrew, Qw32_charset_vietnamese, Qw32_charset_thai)
8604 (Qw32_charset_mac, Vw32_charset_info_alist): Move from w32fns.c.
8605 (syms_of_w32font): Update for above changes.
8606
86072008-06-27 Dan Nicolaescu <dann@ics.uci.edu>
8608
8609 * s/usg5-4.h: Fix previous change: keep the correct branch of a
8610 removed #if.
8611 (USG_SHARED_LIBRARIES): Remove duplicate definition.
8612
86132008-06-26 Juanma Barranquero <lekktu@gmail.com>
8614 Eli Zaretskii <eliz@gnu.org>
8615
8616 * makefile.w32-in (LOCAL_FLAGS):
8617 Don't include WINDOWSNT, DOS_NT and _UCHAR_T.
8618
8619 * sysdep.c (_spawnlp, _getpid):
8620 Declare with explicit _cdecl instead of _CRTAPI1.
8621
8622 * editfns.c (Fget_internal_run_time):
8623 Check for WINDOWSNT with #ifdef, not #if.
8624
86252008-06-26 Jason Rumney <jasonr@gnu.org>
8626
8627 * w32font.h (FONT_HANDLE, FONT_TEXTMETRIC): New macros.
8628
8629 * w32term.c (x_draw_glyph_string_foreground)
8630 (x_draw_composite_glyph_string_foreground): Sync with xterm.c.
8631 Use FONT_HANDLE macro.
8632 (x_draw_glyph_string): Use FONT_TEXTMETRIC macro.
8633
8634 * w32uniscribe.c (uniscribe_otf_capability, uniscribe_shape)
8635 (uniscribe_encode_char): Use FONT_HANDLE macro.
8636
8637 * w32font.c (Fx_select_font): Use FONT_HANDLE macro.
8638 (w32font_text_extents): Use precast w32_font.
8639 (w32font_close): Free cached metrics.
8640 (w32font_open_internal): Allocate space for name on stack.
8641
86422008-06-26 Chong Yidong <cyd@stupidchicken.com>
8643
8644 * xdisp.c (extend_face_to_end_of_line): Fix last change.
8645
86462008-06-26 Jason Rumney <jasonr@gnu.org>
8647
8648 * w32term.h (FONT_AVG_WIDTH): Remove obsolete macro.
8649 (CP_8BIT, CP_UNICODE, CP_UNKNOWN): Remove obsolete constants.
8650
86512008-06-26 Juanma Barranquero <lekktu@gmail.com>
8652
8653 * Makefile.in (SOME_MACHINE_OBJECTS): Remove w32bdf.o.
8654
86552008-06-26 Jason Rumney <jasonr@gnu.org>
8656
8657 * w32bdf.c, w32bdf.h: Remove obsolete files.
8658
8659 * makefile.w32-in: Remove refs to w32bdf.h and w32bdf.c.
8660
8661 * w32gui.h: Don't include w32bdf.h.
8662 (XCharStruct, enum w32_char_font_type, W32FontStruct):
8663 Remove obsolete font support.
8664
8665 * w32font.h (struct w32font_info): Remove compat_w32_font.
8666 Add hfont member.
8667 (FONT_COMPAT): Remove obsolete macro.
8668
8669 * w32font.c (w32font_close): Remove compat code. Delete hfont member.
8670 (w32font_encode_char, w32font_text_extents): Use new hfont member.
8671 (w32font_open_internal): Remove compat code. Set new hfont member.
8672 (Fx_select_font): Use new hfont member.
8673
8674 * w32uniscribe.c (uniscribe_otf_capability, uniscribe_shape)
8675 (uniscribe_encode_char): Use new hfont member.
8676
8677 * w32term.c (x_draw_glyph_string_foreground)
8678 (x_draw_composite_glyph_string_foreground): Use new hfont member.
8679 (x_draw_glyph_string): Use metrics in w32font_info.
8680
86812008-06-26 Kenichi Handa <handa@m17n.org>
8682
8683 * xdisp.c (handle_auto_composed_prop): Fix for the terminal case.
8684
86852008-06-26 Dan Nicolaescu <dann@ics.uci.edu>
8686
8687 * unexnext.c:
8688 * m/ews4800.h:
8689 * m/hp9000s300.h:
8690 * m/ibm370aix.h:
8691 * m/mips-siemens.h:
8692 * m/ncr386.h:
8693 * m/next.h:
8694 * m/pmax.h:
8695 * m/powerpcle.h:
8696 * m/tandem-s2.h:
8697 * s/386bsd.h:
8698 * s/bsd386.h:
8699 * s/bsd4-1.h:
8700 * s/bsd4-2.h:
8701 * s/bsdos2-1.h:
8702 * s/bsdos2.h:
8703 * s/bsdos3.h:
8704 * s/bsdos4.h:
8705 * s/nextstep.h:
8706 * s/ultrix4-3.h:
8707 * s/usg5-0.h:
8708 * s/usg5-2-2.h:
8709 * s/usg5-2.h:
8710 * s/usg5-4-3.h:
8711 * s/ux4800.h:
8712 * s/uxpds.h:
8713 * s/uxpv.h: Remove support for obsolete systems.
8714 * s/hpux.h, s/hpux10.h, s/hpux8.h, s/hpux9.h, s/hpux9shr.h:
8f3a3ac2 8715 Remove, insert contents in s/hpux10-20.h.
aac0c6e3
MR
8716 * s/aix3-1.h, s/aix3-2-5.h, s/aix3-2.h, s/aix4-1.h, s/aix4.h:
8717 Remove, insert contents in s/aix4-2.h.
8718 * s/usg5-3.h: Remove, insert contents in s/usg5-4.h.
8719 * s/bsd4-3.h: Rename to ...
8720 * s/bsd-common.h: ... this.
8721 * data.c:
8722 * doc.c:
8723 * ecrt0.c:
8724 * emacs.c:
8725 * fileio.c:
8726 * floatfns.c:
8727 * keyboard.c:
8728 * mem-limits.h:
8729 * print.c:
8730 * process.c:
8731 * sysdep.c:
8732 * syssignal.h:
8733 * systty.h:
8734 * syswait.h:
8735 * term.c:
8736 * unexec.c:
8737 * unexelf.c:
8738 * unexhp9k800.c:
8739 * m/hp800.h:
8740 * m/ibmrs6000.h:
8741 * m/mips.h:
8742 * m/vax.h:
8743 * s/darwin.h:
8744 * s/freebsd.h:
8745 * s/gnu.h:
8746 * s/ms-w32.h:
8747 * s/msdos.h:
8748 * s/netbsd.h:
8749 * s/template.h: Remove references to obsolete variables.
8750
8751 * Makefile.in: Add dependencies for all unexec files.
8752 (admindir): Remove unused variable.
8753 (UNEXEC_SRC): Remove references.
8754
87552008-06-25 Chong Yidong <cyd@stupidchicken.com>
8756
8757 * xfns.c (x_default_font_parameter): If Xft is available, first
8758 try Monospace-12 for the default font.
8759
87602008-06-25 Jason Rumney <jasonr@gnu.org>
8761
8762 * xdisp.c (get_glyph_face_and_encoding): Encode invalid glyphs as 0.
8763
87642008-06-25 Stefan Monnier <monnier@iro.umontreal.ca>
8765
8766 * bytecode.c (Fbyte_code): Disable debugging code that doesn't compile.
8767
8768 * buffer.c (syms_of_buffer): Remove default-word-wrap.
8769
87702008-06-25 Juanma Barranquero <lekktu@gmail.com>
8771
8772 * xdisp.c (syms_of_xdisp) <truncate-partial-width-windows>: Doc fix.
8773 <scroll-conservatively>: Fix typo in docstring.
8774
8775 * xselect.c (Fx_send_client_event): Doc fix.
8776
87772008-06-25 Kenichi Handa <handa@m17n.org>
8778
8779 * xfaces.c (Fx_list_fonts): Call Flist_fonts with the arg PREFER.
8780
8781 * font.c (font_parse_fcname): Remove unused variables.
8782 (font_sort_entites): Delete the arg SPEC. Caller changed.
8783 Fix for the case of ! best_only.
8784 (font_delete_unmatched): Check DPI and AVGWIDTH too.
8785
8786 * lisp.h (Fstring_to_unibyte): EXFUN it.
8787
8788 * character.h (str_to_unibyte): Extern it.
8789
8790 * character.c (str_to_unibyte): New function.
8791
8792 * fns.c (Fstring_to_unibyte): New function.
8793 (syms_of_fns): Defsubr it.
8794
87952008-06-24 Kenichi Handa <handa@m17n.org>
8796
8797 * font.c (font_score): Even if the PIXEL_SIZE is the same, check
8798 DPI too.
8799 (font_sort_entites): Setup prefer_prop[FONT_DPI_INDEX] too.
8800
88012008-06-24 Andreas Schwab <schwab@suse.de>
8802
8803 * Makefile.in (${lispsource}loaddefs.el): Rename from
8804 ../lisp/loaddefs.el.
8805 (bootstrap-clean): Do what distclean does but don't remove
8806 Makefile.
8807 (distclean): Depend on bootstrap-clean and remove Makefile.
8808
88092008-06-24 Chong Yidong <cyd@stupidchicken.com>
8810
8811 * buffer.h (struct buffer): New member word_wrap.
8812
8813 * buffer.c (syms_of_buffer): New variables default-word-wrap and
8814 word-wrap.
8815 (init_buffer_once): Initialize them.
8816
8817 * dispextern.h (struct it): Replace bool truncate_lines_p with a
8818 line_wrap enum possessing three possible values.
8819
8820 * termopts.h: Replace truncate_partial_width_windows with
8821 Vtruncate_partial_width_windows.
8822
8823 * dispnew.c (direct_output_for_insert): Avoid direct output when
8824 inserting a space with word wrap on.
8825
8826 * indent.c (compute_motion): Obey integer values of
8827 truncate-partial-width-windows.
8828
8829 * xdisp.c (Vtruncate_partial_width_windows): New Lisp_Object,
8830 replacing truncate_partial_width_windows.
8831 (init_iterator): If Vtruncate_partial_width_windows is an integer,
8832 truncate only if the window width is below that integer.
8833 (start_display, resize_mini_window, produce_stretch_glyph)
8834 (display_string, move_it_in_display_line_to): Use line_wrap.
8835 (back_to_previous_visible_line_start, reseat_1): Reset
8836 string_from_display_prop_p.
8837 (display_line): Extend default face to end of line when wrapping.
8838
88392008-06-24 Kim F. Storm <storm@cua.dk>
8840
8841 * xdisp.c (display_line, move_it_in_display_line_to): Add ability
8842 to wrap continued lines at word boundaries.
8843
88442008-06-24 Jason Rumney <jasonr@gnu.org>
8845
8846 * font.c (Ffont_face_attributes): Multiply pixel size before point
8847 conversion to avoid multiplying rounding error.
8848
88492008-06-23 Jason Rumney <jasonr@gnu.org>
8850
8851 * w32term.c (x_draw_glyph_string_background)
8852 (x_draw_glyph_string): Remove old bdf font code.
8853
8854 * w32term.h (FONT_TYPE_FOR_UNIBYTE, FONT_TYPE_FOR_MULTIBYTE): Remove.
8855
88562008-06-22 Kenichi Handa <handa@m17n.org>
8857
8858 * font.c (font_find_for_lface): Try the adstyle specified in
8859 the property of LFACE_FONT of LFACE (if any).
8860
88612008-06-21 Seiji Zenitani <zenitani@mac.com>
8862 Ryo Yoshitake <ryo@shiftmode.net>
8863
8864 * xterm.c (x_set_frame_alpha): Add x_catch_errors for bug#437.
8865
88662008-06-22 Stefan Monnier <monnier@iro.umontreal.ca>
8867
8868 * Makefile.in (${lisp} ${SOME_MACHINE_LISP}, ../lisp/loaddefs.el):
8869 Use $(BOOTSTRAPEMACS) rather than witness-emacs.
8870 (bootstrap-emacs${EXEEXT}): Merge witness-emacs into it.
8871 (witness-emacs): Remove.
8872 (lisp, shortlisp): Move loaddefs.el earlier.
8873 (mostlyclean): Forget about witness-emacs.
8874
88752008-06-22 Glenn Morris <rgm@gnu.org>
8876
8877 * Makefile.in (witness-emacs): Depend on temacs${EXEEXT}.
8878 (.SUFFIXES): Declare .el.elc as a suffix rule, for non-GNU makes.
8879
88802008-06-21 Stefan Monnier <monnier@iro.umontreal.ca>
8881
8882 * Makefile.in (PRECOMP): Remove.
8883 (${lisp} ${SOME_MACHINE_LISP}): Remove pseudo dependency on PRECOMP.
8884 (witness-emacs): Run `compile-first'.
8885 (.el.elc): Use the new compile-onefile target.
8886
88872008-06-21 Kenichi Handa <handa@m17n.org>
8888
8889 * xftfont.c (xftfont_open): Handle QCembolden only when
8890 FC_EMBOLDEN is defined.
8891
88922008-06-21 Andreas Schwab <schwab@suse.de>
8893
8894 * Makefile.in (witness-emacs): Use ../lisp, not $(lispsource).
8895 (.el.elc): Likewise.
8896
88972008-06-21 Miles Bader <miles@gnu.org>
8898
8899 * Makefile.in (../lisp/loaddefs.el): Build autoloads in the lisp
8900 build dir, not the lisp source dir.
8901
89022008-06-21 Stefan Monnier <monnier@iro.umontreal.ca>
8903
8904 * Makefile.in (emacs${EXEEXT}): Link the new emacs to bootstrap-emacs.
8905 (bootstrapclean): Remove.
8906 (.el.elc): New rule.
8907 (PRECOMP): New var.
8908 (../lisp/subdirs.el): Remove.
8909 (bootstrap-emacs${EXEEXT}): Remove subdirs.el and charpro.el dependency.
8910 (witness-emacs): New target.
8911 (mostlyclean): Remove witness-emacs as well.
8912 (../lisp/loaddefs.el, ${lisp} ${SOME_MACHINE_LISP}):
8913 Add witness-emacs dependency.
8914
89152008-06-20 Chong Yidong <cyd@stupidchicken.com>
8916
8917 * font.c (Ffont_face_attributes): Omit key-attribute pairs not
8918 defined by the font.
8919
89202008-06-20 Stefan Monnier <monnier@iro.umontreal.ca>
8921
8922 * Makefile.in (emacs${EXEEXT}): Depend on the machine-specific files.
8923 (bootstrap-clean): New target that keeps TAGS around.
8924 (../lisp/subdirs.el, ../lisp/loaddefs.el): New targets.
8925 (bootstrap-emacs${EXEEXT}): Depend on subdirs.el.
8926
89272008-06-20 Jason Rumney <jasonr@gnu.org>
8928
8929 * w32fns.c, w32term.c, w32term.h, w32gui.h [OLD_FONT]:
8930 Remove obsolete font code.
8931
8932 * w32font.c (font_matches_spec): Use csb bitfield from font signature
8933 to determine language support.
8934
89352008-06-20 Stefan Monnier <monnier@iro.umontreal.ca>
8936
8937 * sysdep.c (cfsetspeed): New fun extracted from the code.
8938 (cfmakeraw): Move before first use.
8939
89402008-06-20 Angelo Graziosi <angelo.graziosi@alice.it> (tiny change)
8941
8942 * sysdep.c (cfmakeraw): Provide fallback implementation.
8943 (serial_configure): Provide fallback implementation of cfsetspeed.
8944
89452008-06-20 Kenichi Handa <handa@m17n.org>
8946
8947 * xftfont.c (xftfont_open): Add FOUNDRY, SPACING, DPI, SCALABLE to
8948 the pattern.
8949
8950 * fontset.c (fontset_from_font): Copy font_spec before changing
8951 the elements.
8952
8953 * xfns.c (x_default_font_parameter): Try "monospace-12" too.
8954
89552008-06-20 Stefan Monnier <monnier@iro.umontreal.ca>
8956
8957 * w32fns.c, xfns.c (x_default_font_parameter): Only set `font-param'
8958 for explicit `font' parameters.
8959
8960 * frame.c (x_set_font): Remove unexplained call to fix inf-recursion.
8961
89622008-06-19 Kenichi Handa <handa@m17n.org>
8963
8964 * frame.c: Include <ctype.h>.
8965 (x_set_font_backend): Allow spacing characters in the X resource
8966 for FontBackend.
8967
89682008-06-19 Stefan Monnier <monnier@iro.umontreal.ca>
8969
8970 * w32fns.c, xfns.c (Qfont_param): New var.
8971 (syms_of_w32fns): Initialize it.
8972 (x_default_font_parameter): Record explicit `font' into
8973 `font-parameter'.
8974
89752008-06-18 Kenichi Handa <handa@m17n.org>
8976
8977 * font.c (font_parse_xlfd): Fix previous change.
8978 (font_parse_fcname): Don't use :fc-unknown-spec.
8979 (FRAME_X_DISPLAY_INFO): Be sure to have at least 1 pixel height.
8980 (Fcopy_font_spec): Preserve the order of elements in FONT_EXTRA.
8981 (font_add_log): Prepend the driver name to the resulting fonts.
8982
8983 * ftfont.c (ftfont_pattern_entity): New arg extra. Caller changed.
8984 (ftfont_spec_pattern): Don't check QCfc_unknown_spec and QCname.
8985 (ftfont_list) [FC_FONTFORMAT]: Include FC_FONTFORMAT in objset.
8986
8987 * xftfont.c (QChinting , QCautohint, QChintstyle, QCrgba)
8988 (QCembolden): New variables.
8989 (syms_of_xftfont): DEFSYM them.
8990 (xftfont_open): Call XftFontMatch. Don't trust the result of
8991 XftTextExtents8 if the pixel_size is less than 5.
8992
89932008-06-18 Andreas Schwab <schwab@suse.de>
8994
8995 * font.c (Ffont_face_attributes): Only define if HAVE_WINDOW_SYSTEM.
8996 (syms_of_font): Only defsubr if HAVE_WINDOW_SYSTEM.
8997
89982008-06-18 Jason Rumney <jasonr@gnu.org>
8999
9000 * w32font.c (w32font_list, w32font_match): Add logging.
9001
9002 * w32uniscribe.c (uniscribe_list, uniscribe_match): Add logging.
9003
90042008-06-17 Chong Yidong <cyd@stupidchicken.com>
9005
9006 * font.c (font_parse_fcname): Store divider characters for
9007 unknown-spec list. For known key symbols, intern using correct
9008 symbol name.
9009
90102008-06-17 Kenichi Handa <handa@m17n.org>
9011
9012 * xfaces.c (realize_default_face): If the frame is not on window
9013 system, set the fontset of face to nil.
9014
90152008-06-17 Naohiro Aota <nao.aota@gmail.com> (tiny change)
9016
9017 * fontset.c (fontset_pattern_regexp): Escape some reg-expr characters.
9018
90192008-06-16 Juanma Barranquero <lekktu@gmail.com>
9020
9021 * dispextern.h (lookup_non_ascii_face, split_font_name_into_vector)
9022 (build_font_name_from_vector): Delete externs.
9023
9024 * xfaces.c (struct font_name): Don't declare.
9025
90262008-06-16 Stefan Monnier <monnier@iro.umontreal.ca>
9027
9028 * font.c (font_unparse_gtkname): Use EQ to compare Lisp_Objects.
9029
90302008-06-16 Chong Yidong <cyd@stupidchicken.com>
9031
9032 * font.c (font_parse_fcname): Fix handling of unknown-spec string.
9033
90342008-06-16 Juanma Barranquero <lekktu@gmail.com>
9035
9036 * font.c (Ffont_spec): Fix usage in docstring.
9037 (Ffont_face_attributes): Doc fix.
9038
90392008-06-16 Andreas Schwab <schwab@suse.de>
9040
9041 * font.c (Ffont_face_attributes): Fix definition.
9042
90432008-06-16 Jason Rumney <jasonr@gnu.org>
9044
9045 * font.h (font_style_symbolic_from_value): Remove.
9046
9047 * font.c (font_style_symbolic_from_value): Remove.
9048 (font_style_symbolic): Revert to pre 2008-06-13 version.
9049
9050 * w32font.c (w32_to_fc_weight): New function.
9051 (w32font_full_name, logfont_to_fcname): Use it.
9052
90532008-06-16 Kenichi Handa <handa@m17n.org>
9054
9055 * font.c (font_check_object): Delete it.
9056 (font_clear_cache): Check if a font-object is alive.
9057 (font_open_entity): Likewise. Set FONT_OBJLST_INDEX of a
9058 font-object to nil.
9059 (font_close_object): Don't check FONT_CLOSE_OBJECT.
9060 (font_at): Don't call font_check_object.
9061 (Ffont_get): Return a symbol for :weight, :slant, and :width.
9062
90632008-06-16 Katsumi Yamaoka <yamaoka@jpl.org>
9064
9065 * puresize.h (BASE_PURESIZE): Increase to 1230000.
9066
90672008-06-16 Chong Yidong <cyd@stupidchicken.com>
9068
9069 * font.c (font_parse_fcname): Correctly parse KEY=VAL values.
9070
90712008-06-15 Chong Yidong <cyd@stupidchicken.com>
9072
9073 * font.c (font_parse_fcname): Only one decimal point.
9074 (font_unparse_fcname): Handle data in family and foundry indices
9075 as symbols, not strings.
9076 (font_unparse_gtkname, Ffont_face_attributes): New functions.
9077
9078 * xfns.c (Fx_select_font): Give GTK font dialog the default font name.
9079
9080 * font.h (font_unparse_gtkname): Add prototype.
9081
90822008-06-15 Naohiro Aota <nao.aota@gmail.com> (tiny change)
9083
9084 * fontset.c (fontset_pattern_regexp): Escape `+' characters in pattern.
9085
90862008-06-15 Andreas Schwab <schwab@suse.de>
9087
9088 * font.c (font_update_drivers): Fix crash when no drivers match.
9089
90902008-06-15 Stefan Monnier <monnier@iro.umontreal.ca>
9091
9092 * xfns.c (Fx_create_frame): internal-border-width default to 0 for Gtk.
9093 * gtkutil.c (xg_create_frame_widgets): Don't set internal_border_width.
9094
90952008-06-14 Stefan Monnier <monnier@iro.umontreal.ca>
9096
9097 * xdisp.c (syms_of_xdisp): Default underline-minimum-offset to 1.
9098
90992008-06-13 Stefan Monnier <monnier@iro.umontreal.ca>
9100
9101 * process.c (Fserial_process_configure, Fprocess_send_eof):
9102 Use EQ to compare Lisp_Objects.
9103
91042008-06-13 Jason Rumney <jasonr@gnu.org>
9105
9106 * w32fns.c (Fw32_select_font): Remove old font API function.
9107
9108 * w32font.c (logfont_to_fcname): New function.
9109 (Fx_select_font): New font dialog function compatible with
9110 GTK/fontconfig version.
9111
9112 * font.c (font_style_symbolic_from_value): New function.
9113 (font_style_symbolic): Use it.
9114
9115 * font.h (font_style_symbolic_from_value): Declare new function.
9116
91172008-06-13 Juanma Barranquero <lekktu@gmail.com>
9118
9119 * font.c (syms_of_font) <font-weight-table, font-slant-table>:
9120 <font-width-table>: Fix typos in docstrings.
9121
91222008-06-13 Daniel Engeler <engeler@gmail.com>
9123
9124 These changes add serial port access.
9125 * process.c: Add HAVE_SERIAL.
9126 (Fdelete_process, Fprocess_status, Fset_process_buffer)
9127 (Fset_process_filter, Fset_process_sentinel, Fprocess_contact)
9128 (list_processes_1, select_wrapper, Fstop_process)
9129 (Fcontinue_process, Fprocess_send_eof, kill_buffer_processes)
9130 (status_notify): Modify to handle serial processes.
9131 [HAVE_SERIAL] (Fserial_process_configure)
9132 [HAVE_SERIAL] (make_serial_process_unwind, Fmake_serial_process):
9133 New functions.
9134 * process.h (struct Lisp_Process): Add `type'.
9135 * sysdep.c [HAVE_TERMIOS] (serial_open, serial_configure):
9136 New functions.
9137 * w32.c (_sys_read_ahead, sys_read, sys_write): Modify to handle
9138 serial ports.
b71ac3dd 9139 (serial_open, serial_configure): New functions.
aac0c6e3
MR
9140 * w32.h: Add FILE_SERIAL.
9141 (struct _child_process): Add ovl_read, ovl_write.
9142
91432008-06-13 Kenichi Handa <handa@m17n.org>
9144
9145 * dispextern.h (enum lface_attribute_index): New member
9146 LFACE_FOUNDRY_INDEX.
9147
9148 * font.c (font_score): Delete arg alternate_families. Check only
9149 weight, slant, width, and size. Ignore the difference of alias
9150 style symbols.
9151 (font_sort_entites): Adjust for the above change. Reflect the
9152 order of font-driver to scores.
9153 (font_list_entities): Don't check alternate_familes here.
9154 (font_clear_prop): Handle foundry.
9155 (font_update_lface): Don't parse "foundry-family" form here.
9156 Handle FONT_FOUNDRY_INDEX.
9157 (font_find_for_lface): Likewise. Handle alternate families here.
9158 If registry is nil, try iso8859-1 and ascii-0.
9159 (font_open_for_lface): Pay attention to size in ENTITY.
9160 (font_open_by_name): Simplify by calling font_load_for_lface.
9161 (free_font_driver_list): Delete it.
9162 (font_update_drivers): Preserve the order of backends.
9163 (syms_of_font): Setting of sort_shift_bits adjusted for the change
9164 of font_score and font_sort_entites.
9165 (font_update_sort_order): Likewise.
9166
9167 * xfaces.c (LFACE_FOUNDRY): New macro.
9168 (check_lface_attrs): Check foundry.
9169 (set_lface_from_font): Don't parse "FOUNDRY-FAMILY" form.
9170 (merge_face_vectors): Check foundry.
9171 (merge_face_ref): Likewise.
9172 (Finternal_set_lisp_face_attribute): Likewise.
9173 (x_update_menu_appearance): Likewise.
9174 (Finternal_get_lisp_face_attribute): Likewise.
9175 (lface_hash): Likewise.
9176 (lface_same_font_attributes_p): Likewise.
9177 (x_supports_face_attributes_p): Likewise.
9178 (tty_supports_face_attributes_p): Likewise.
9179 (Finternal_set_alternative_font_family_alist): Intern strings.
9180 (Finternal_set_alternative_font_registry_alist): Downcase strings.
9181 (realize_default_face): Set LFACE_FOUNDRY (lface).
9182
9183 * xfns.c (Fx_create_frame, x_create_tip_frame): Register X
9184 font-driver at first.
9185
9186 * ftfont.c (ftfont_font_format) [! FC_FONTFORMAT]: Declare "int len;".
9187
91882008-06-12 Emanuele Giaquinta <emanuele.giaquinta@gmail.com> (tiny change)
9189
9190 * lread.c (Fload): Use xfree, not free on saved_doc_string.
9191
91922008-06-12 Jim Meyering <meyering@redhat.com>
9193
9194 Make unexec_free handle NULL the same way free does.
9195 * unexmacosx.c (unexec_free): Ignore a NULL argument.
9196
91972008-06-12 Stefan Monnier <monnier@iro.umontreal.ca>
9198
9199 * character.h (CHAR_TO_BYTE_SAFE): New macro.
9200 * character.c (Fmultibyte_char_to_unibyte): Obey the docstring.
9201 * regex.c (RE_CHAR_TO_UNIBYTE): Use the new macro.
9202 (WEAK_ALIAS): Simplify.
9203 * syntax.c (skip_chars): Don't mark non-byte chars in the fastmap
9204 when searching a unibyte buffer.
9205
92062008-06-12 Chong Yidong <cyd@stupidchicken.com>
9207
9208 * xfns.c (Fx_select_font): Rename from x-font-dialog.
9209
92102008-06-12 Juanma Barranquero <lekktu@gmail.com>
9211
9212 * w32font.c: Include ctype.h.
9213
92142008-06-11 Jason Rumney <jasonr@gnu.org>
9215
9216 * w32font.c (w32font_encode_char): Detect missing glyphs that are
9217 misreported as space.
9218 (add_font_entity_to_list): Support unicode-bmp and unicode-sip
9219 as aliases for registry iso10646-1.
9220
92212008-06-11 Stefan Monnier <monnier@iro.umontreal.ca>
9222
9223 * buffer.c (clone_per_buffer_values): Skip `name'.
9224
92252008-06-11 Chong Yidong <cyd@stupidchicken.com>
9226
9227 * font.c (font_parse_fcname): Fix last change; accept decimal
9228 points in font size.
9229
92302008-06-10 Jason Rumney <jasonr@gnu.org>
9231
9232 * w32uniscribe.c (add_opentype_font_name_to_list):
9233 Skip non unicode fonts.
9234
92352008-06-10 Chong Yidong <cyd@stupidchicken.com>
9236
9237 * xfns.c (Fx_font_dialog): New function.
9238
9239 * gtkutil.c (xg_dialog_response_cb): Rename from
9240 xg_file_response_callback.
9241 (pop_down_dialog): Rename from pop_down_file_dialog.
9242 (xg_get_file_name): Callers changed.
9243 (xg_get_font_name): New function.
9244
9245 * gtkutil.h (xg_get_font_name): Insert prototype.
9246
92472008-06-10 Stefan Monnier <monnier@iro.umontreal.ca>
9248
9249 * xdisp.c (underline_minimum_offset): Rename from xterm.c's
9250 x_underline_minimum_display_offset.
9251 (syms_of_xdisp): Declare it here rather than in xterm.c.
9252 * dispextern.h (underline_minimum_offset): Declare it.
9253 * w32term.c (x_draw_glyph_string): Use it.
9254 * xterm.c (x_underline_minimum_display_offset): Move to xdisp.c.
9255 (syms_of_xterm): Don't declare it any more.
9256 (x_draw_glyph_string): Adjust to the new name.
9257
92582008-06-10 David De La Harpe Golden <david@harpegolden.net> (tiny change)
9259
9260 * xterm.c (x_underline_minimum_display_offset): New var.
9261 (x_draw_glyph_string): Use it.
9262 (syms_of_xterm): Declare it.
9263
92642008-06-10 Chong Yidong <cyd@stupidchicken.com>
9265
9266 * font.c (font_parse_fcname): Accept GTK-style font names too.
9267
92682008-06-10 Stefan Monnier <monnier@iro.umontreal.ca>
9269
9270 * dired.c (file_name_completion): Don't return t if the match is exact
9271 but with different capitalization.
9272 * minibuf.c (Ftry_completion): Simplify.
9273
9274 * window.c (Vwindow_point_insertion_type): New var.
9275 (set_window_buffer): Use it.
9276 (syms_of_window): Init and export it to Lisp.
9277
92782008-06-10 Kenichi Handa <handa@m17n.org>
9279
9280 * font.h (font_intern_prop): Prototype adjusted.
9281
9282 * font.c (font_intern_prop): New arg force_symbol.
9283 (font_parse_xlfd, font_parse_fcname, font_parse_family_registry):
9284 Adjust for the change of font_intern_prop.
9285
9286 * ftfont.c (ftfont_pattern_entity):
9287 * w32font.c (add_font_name_to_list, w32_enumfont_pattern_entity)
9288 (w32_registry):
9289 * w32uniscribe.c (add_opentype_font_name_to_list): Adjust for
9290 the change of font_intern_prop.
9291
92922008-06-09 Juanma Barranquero <lekktu@gmail.com>
9293
9294 * w32menu.c (digest_single_submenu): Declare extern.
9295
92962008-06-09 Jason Rumney <jasonr@gnu.org>
9297
9298 * w32term.c (x_make_frame_visible): Use alternate restore flags.
9299
9300 * w32menu.c (Fx_popup_menu): Unwind protect while building menu.
9301 (parse_single_submenu): Remove.
9302 (digest_single_submenu): Remove.
9303 (syms_of_w32menu): Don't initialise variables that have moved
9304 to menu.c.
9305 (set_frame_menubar): Sync with version in xmenu.c.
9306 (w32_menu_show): Sync with xmenu_show in xmenu.c.
9307
9308 * menu.c (single_keymap_panes, push_menu_pane, push_menu_item):
9309 Make static again.
9310
93112008-06-09 Jason Rumney <jasonr@gnu.org>
9312
9313 Changes to w32 files related to the move of common menu code
9314 to menu.c on 2008-06-08 by Chong Yidong.
9315
9316 * menu.c [HAVE_NTGUI]: Include w32term.h, move widget related
9317 defs to w32gui.h.
9318 (single_keymap_panes, push_menu_item, push_menu_pane):
9319 Make globally visible.
9320
9321 * w32menu.c (enum button_type, widget_value, local_heap, local_alloc)
9322 (local_free, malloc_widget_value, free_widget_value)
9323 (MENU_ITEMS_ITEM_NAME, MENU_ITEMS_ITEM_ENABLE, MENU_ITEMS_ITEM_VALUE)
9324 (MENU_ITEMS_ITEM_EQUIV_KEY, MENU_ITEMS_ITEM_DEFINITION)
9325 (MENU_ITEMS_ITEM_TYPE, MENU_ITEMS_ITEM_SELECTED, MENU_ITEMS_ITEM_HELP)
9326 (MENU_ITEMS_ITEM_LENGTH, enum menu_item_idx): Remove defs.
9327 (menu_items, menu_items_allocated, menu_items_used)
9328 (menu_items_n_panes, menu_items_submenu_depth): Remove global vars.
9329 (init_menu_items, finish_menu_items, discard_menu_items)
9330 (grow_menu_items, push_submenu_start, push_submenu_end)
9331 (push_left_right_boundary, push_menu_pane, push_menu_item)
9332 (keymap_panes, single_keymap_panes, list_of_panes, list_of_items)
9333 (free_menubar_widget_tree_value, parse_single_submenu)
9334 (update_submenu_strings): Remove functions.
9335 (xmalloc_widget_value): Remove and declare extern.
9336
9337 * makefile.w32-in ($(SRC)/menu.$(O)): New target.
9338 (OBJ1): Build it.
9339
9340 * w32gui.h (widget_value, XtPointer, Boolean, enum button_type)
9341 (local_heap, local_alloc, local_free, malloc_widget_value)
9342 (free_widget_value): Define here.
9343
93442008-06-09 Kenichi Handa <handa@m17n.org>
9345
9346 * font.h (Qascii_0): Extern it.
9347
9348 * font.c (Qascii_0): New variable.
9349 (syms_of_font): DEFSYM it.
9350 (font_open_by_name): If the registry "iso8859-1" fails, try also
9351 "ascii-0".
9352
9353 * ftfont.c (ftfont_spec_pattern): Accept the registry `ascii-0'.
9354
93552008-06-08 Kenichi Handa <handa@m17n.org>
9356
9357 * .gdbinit (xfont): New command.
9358
93592008-06-08 Andreas Schwab <schwab@suse.de>
9360
9361 * menu.c [HAVE_X_WINDOWS]: Include "xterm.h".
9362 * Makefile.in (menu.o): Update dependencies.
9363
9364 * Makefile.in (obj): Always add menu.o.
9365 * emacs.c (main): Always call syms_of_menu.
9366 * keyboard.h: Remove extra #ifdef HAVE_X_WINDOW.
9367
93682008-06-08 Chong Yidong <cyd@stupidchicken.com>
9369
9370 * Makefile.in: Compile menu.c.
9371
9372 * lisp.h: Declare syms_of_menu.
9373
9374 * emacs.c (main): Call syms_of_menu.
9375
9376 * keyboard.h: Relocate platform-independent menu definitions from
9377 xmenu.c.
9378
9379 * menu.c: New file. Relocate platform-independent menu
9380 definitions from xmenu.c. Suggested by Adrian Robert.
9381
9382 * xmenu.c: Remove platform-independent menu definitions.
9383 (menu_items menu_items_inuse, menu_items_allocated)
9384 (menu_items_used, menu_items_n_panes)
9385 (menu_items_submenu_depth): Move to keyboard.h.
9386 (init_menu_items, finish_menu_items, unuse_menu_items)
9387 (discard_menu_items, restore_menu_items, save_menu_items)
9388 (grow_menu_items, push_submenu_start, push_submenu_end)
9389 (push_left_right_boundary, push_menu_pane, push_menu_item)
9390 (keymap_panes, single_keymap_panes, single_menu_item)
9391 (list_of_panes, list_of_items, find_and_call_menu_selection)
9392 (xmalloc_widget_value, free_menubar_widget_value_tree)
9393 (parse_single_submenu, digest_single_submenu)
9394 (update_submenu_strings): Move to menu.c.
9395
93962008-06-07 Stefan Monnier <monnier@iro.umontreal.ca>
9397
9398 * dispnew.c (Flast_nonminibuf_frame): Handle the NULL case.
9399
94002008-06-06 Miles Bader <miles@gnu.org>
9401
9402 * xdisp.c (x_produce_glyphs): Calculate tab width based on current
9403 face, not frame default.
9404
94052008-06-05 Martin Rudalics <rudalics@gmx.at>
9406
9407 * window.c (pop_up_windows, pop_up_frames)
9408 (display_buffer_reuse_frames, Vpop_up_frame_function)
9409 (Vdisplay_buffer_function, Veven_window_heights)
9410 (Vspecial_display_buffer_names, Vspecial_display_regexps)
9411 (Vspecial_display_function, Vsame_window_buffer_names)
9412 (Vsame_window_regexps, split_height_threshold)
9413 (Vsplit_window_preferred_function): Move those vars to window.el.
9414 (display_buffer_1, Fspecial_display_p, Fsame_window_p)
9415 (Fdisplay_buffer): Move those functions to window.el.
9416 (syms_of_window): Remove corresponding declarations.
9417 (display_buffer): New function.
9418 (temp_output_buffer_show, Fother_window_for_scrolling): Use it.
9419 * dispnew.c (Flast_nonminibuf_frame): New function.
9420 * buffer.c (Fpop_to_buffer): Move to window.el.
9421
94222008-06-05 Stefan Monnier <monnier@iro.umontreal.ca>
9423
9424 * data.c (set_internal): Fix up call to let_shadows_buffer_binding_p.
9425
94262008-06-05 Kenichi Handa <handa@m17n.org>
9427
9428 * coding.c (detect_coding): Fix previous change.
9429 (detect_coding_system): Likewise.
9430
94312008-06-05 Stefan Monnier <monnier@iro.umontreal.ca>
9432
9433 * character.h (MAKE_CHAR_MULTIBYTE): Check the arg is a (uni)byte.
9434
9435 * keymap.c (Vminibuffer_local_filename_must_match_map):
9436 Rename from Vminibuffer_local_must_match_filename_map.
9437 (syms_of_keymap):
9438 * minibuf.c (Fcompleting_read): Adjust accordingly.
9439 * commands.h: Rename declaration as well.
9440
94412008-06-05 Kenichi Handa <handa@m17n.org>
9442
9443 * font.c (Ffont_spec): Don't use font_parse_family_registry for
9444 family name.
9445 (Ffont_put): Likewise.
9446
9447 * fontset.c (fontset_find_font): Call font_open_for_lface with the
9448 current font-spec.
9449
9450 * xfont.c (xfont_list): Don't set registry to iso8859-1 even if it
9451 is unspecified.
9452
9453 * xfaces.c (realize_x_face): If the font-related face attributes
9454 are the same as those of default face, realize a new fontset from
9455 default->fontset.
9456 (Fx_family_fonts): Use font_parse_family_registry instead of Ffont_put.
9457
94582008-06-05 Stefan Monnier <monnier@iro.umontreal.ca>
9459
9460 * xdisp.c (move_it_in_display_line_to): Improve the type of its args.
9461 (move_it_in_display_line): New wrapper.
9462
9463 * window.c (window_scroll_pixel_based_preserve_x)
9464 (window_scroll_preserve_hpos, window_scroll_preserve_vpos): New vars.
9465 (window_scroll_pixel_based, window_scroll_line_based):
9466 Use them to preserve column positions.
9467 (syms_of_window): Initialize them.
9468
9469 * indent.c (Fvertical_motion): Extend first arg to allow passing an
9470 (HPOS . VPOS) pair.
9471
9472 * dispextern.h (move_it_in_display_line): Declare.
9473
94742008-06-05 Juanma Barranquero <lekktu@gmail.com>
9475
9476 * window.c (Fwindow_parameter): Return VALUE, not (PARAMETER . VALUE).
9477 (Fwindow_parameters): Return copy of parameter alist. Doc fix.
9478 (Fset_window_parameter): Return VALUE, not parameter alist. Doc fix.
9479
94802008-06-04 Juanma Barranquero <lekktu@gmail.com>
9481
9482 * window.c (Fset_window_parameter): Doc fix.
9483 (Fwindow_parameters, Fwindow_parameter): Remove redundant check.
9484
94852008-06-04 Joakim Verona <joakim@verona.se>
9486
9487 * window.h (struct window): Add new member window_parameters.
9488
9489 * window.c (Fwindow_parameters, Fwindow_parameter)
9490 (Fset_window_parameter): New defuns.
9491 (syms_of_window): Defsubr the new defuns.
9492 (make_window): Initialize window_parameters to nil.
9493
94942008-06-04 John Paul Wallington <jpw@pobox.com>
9495
9496 * eval.c (Fdefmacro): Doc fix.
9497
94982008-06-04 Kenichi Handa <handa@m17n.org>
9499
9500 * coding.c (detect_coding): Fix handling of coding->head_ascii.
9501 Be sure to call setup_coding_system when we find a proper coding system.
9502 (detect_coding_system): Fix handling of coding->head_ascii.
9503
95042008-06-03 Andreas Schwab <schwab@suse.de>
9505
9506 * font.c (font_prop_validate_spacing): Fix last change.
9507
95082008-06-03 Kenichi Handa <handa@m17n.org>
9509
9510 * font.c (font_prop_validate_spacing): Handle uppercase symbols.
9511 (font_parse_fcname): Fix handling of unknown key.
9512
9513 * xfont.c (xfont_list): Try an alias.
9514
9515 * charset.c (char_charset): Return NULL if the arg charset_list is
9516 specified and C doesn't belong to any of them.
9517
95182008-06-02 Chip Coldwell <coldwell@redhat.com>
9519
9520 * font.c (font_pixel_size): Don't take cdr of an integer.
9521
95222008-06-02 Jim Meyering <meyering@redhat.com>
9523
9524 Make "xfree (NULL)" a no-op; remove useless if-before-xfree.
9525 * alloc.c (xfree): Return right away for a NULL arg.
9526 * lread.c (nosuffix): Remove now-useless if-before-xfree tests.
9527 * gtkutil.c (xg_gtk_scroll_destroy): Likewise.
9528 * mac.c (create_apple_event_from_event_ref): Likewise.
9529 (create_apple_event_from_drag_ref, cfstring_create_normalized):
9530 Likewise.
9531 * doprnt.c (doprnt1): Likewise.
9532 * frame.c (frame): Likewise.
9533 * keyboard.c (wipe_kboard): Likewise.
9534 * macterm.c (x_free_frame_resources, xlfdpat_destroy, XFreePixmap)
9535 (init_font_name_table, mac_unload_font, x_delete_display): Likewise.
9536 * term.c (tty_default_color_capabilities, maybe_fatal)
9537 (delete_tty): Likewise.
9538 * w16select.c (string): Likewise.
9539 * w32.c (w32_get_resource, SET_ENV_BUF_SIZE): Likewise.
9540 * w32bdf.c (w32_free_bdf_font): Likewise.
9541 * w32fns.c (w32_unload_font): Likewise.
9542 * w32font.c (w32font_close): Likewise.
9543 * window.c (size_window): Likewise.
9544 * xselect.c (receive_incremental_selection): Likewise.
9545 * xterm.c (x_free_frame_resources, x_delete_display): Likewise.
9546 * mactoolbox.c (create_apple_event_from_drag_ref): Likewise.
9547 * w32.c (stat): Likewise.
9548
9549 Remove useless if-before-free tests.
9550 * editfns.c (Fset_time_zone_rule): Likewise.
9551 * lread.c (nosuffix): Likewise.
9552 * ralloc.c (get_bloc): Likewise.
9553 * regex.c (reg_free): Likewise.
9554 * xftfont.c (xftfont_open, xftfont_close): Likewise.
9555 * xrdb.c (get_user_app, get_environ_db, x_load_resources): Likewise.
9556 * xsmfns.c (smc_save_yourself_CB): Likewise.
9557
95582008-06-02 Kenichi Handa <handa@m17n.org>
9559
9560 * font.c (font_find_for_lface): Handle float font size.
9561 (font_open_for_lface): Likewise.
9562
9563 * xfaces.c (x_supports_face_attributes_p): Check face->font before
9564 comparing the properties.
9565
95662008-06-01 Jason Rumney <jasonr@gnu.org>
9567
9568 * w32font.c (w32_enumfont_pattern_entity): Use requested registry.
9569 Treat iso10646-1 and Windows DEFAULT_CHARSET specially.
9570 Duplicate iso8859-1 fonts as iso10646-1 if no registry specified.
9571 Don't add empty script list.
9572 (w32_registry): Only map DEFAULT_CHARSET to iso10646-1 here.
9573
95742008-06-01 Dan Nicolaescu <dann@ics.uci.edu>
9575
9576 * Makefile.in (dot, dotdot): Remove, update users.
9577 ".." has been used elsewhere in the file for a long time.
9578 (LIBXT_STATIC): Remove conditional based on unused variable.
9579
95802008-06-01 Miles Bader <miles@gnu.org>
9581
9582 * xfaces.c (Vface_remapping_alist): New variable.
9583 (syms_of_xfaces): Initialize it.
9584 (enum named_merge_point_kind): New type.
9585 (struct named_merge_point): Add `named_merge_point_kind' field.
9586 (push_named_merge_point): Make cycle detection respect different
9587 named-merge-point kinds.
9588 (lface_from_face_name_no_resolve): Rename from `lface_from_face_name'.
9589 Remove face-name alias resolution.
9590 (lface_from_face_name): New definition using
9591 `lface_from_face_name_no_resolve'.
9592 (get_lface_attributes_no_remap): Rename from `get_lface_attributes'.
9593 Call lface_from_face_name_no_resolve instead of lface_from_face_name.
9594 (get_lface_attributes): New definition that layers face-remapping on
9595 top of get_lface_attributes_no_remap. New arg `named_merge_points'.
9596 (lookup_basic_face): New function.
9597 (lookup_derived_face): Pass new last arg to `get_lface_attributes'.
9598 (realize_named_face): Call `get_lface_attributes_no_remap' instead of
9599 `get_lface_attributes'.
9600 (face_at_buffer_position): Use `lookup_basic_face' to lookup
9601 DEFAULT_FACE_ID if necessary. When optimizing the default-face case,
9602 return default_face's face-id instead of the constant DEFAULT_FACE_ID.
9603
9604 * xdisp.c (init_iterator): Pass base_face_id through
9605 `lookup_basic_face' when we actually use it as a face-id.
9606 (handle_single_display_prop): Use `lookup_basic_face' to lookup
9607 DEFAULT_FACE_ID.
9608
9609 * fontset.c (Finternal_char_font): Use `lookup_basic_face' to
9610 lookup the initial face-id.
9611
9612 * dispextern.h (lookup_basic_face, Vface_remapping_alist): New decls.
9613
96142008-06-01 Juanma Barranquero <lekktu@gmail.com>
9615
9616 * textprop.c (syms_of_textprop) <text-property-default-nonsticky>:
9617 (Fremove_text_properties): Fix typos in docstrings.
9618
96192008-05-31 Kenichi Handa <handa@m17n.org>
9620
9621 * font.c (font_list_entities): Fix the car part of data to be
9622 stored in the cache.
9623
9624 * ftfont.c (ftfont_font_format): Don't use strcasestr.
9625
96262008-05-30 Stefan Monnier <monnier@iro.umontreal.ca>
9627
9628 * chartab.c (Foptimize_char_table, optimize_sub_char_table):
9629 Add a `test' argument so another predicate than `equal' can be used.
9630 (map_sub_char_table): Use `eq' rather than `equal' to merge ranges.
9631 (map_char_table): Remove unused vars `c' and `i'.
9632 * lisp.h (Foptimize_char_table): Adjust declaration.
9633 * charset.c (Fclear_charset_maps): Adjust call to Foptimize_char_table.
9634
96352008-05-30 Kenichi Handa <handa@m17n.org>
9636
9637 * font.c (Ffont_info): Define only if HAVE_WINDOW_SYSTEM is defined.
9638 (syms_of_font): Defsubr Sfont_info only if HAVE_WINDOW_SYSTEM is
9639 defined.
9640
96412008-05-30 Stefan Monnier <monnier@iro.umontreal.ca>
9642
9643 * data.c (Fmake_variable_buffer_local, Fmake_local_variable)
9644 (Fmake_variable_frame_local): Disallow mixing buffer-local and
9645 frame-local settings for the same variable.
9646
96472008-05-30 Kenichi Handa <handa@m17n.org>
9648
9649 * fontset.c (Ffont_info): Move to font.c.
9650 (syms_of_fontset): Delete defsubr of Sfont_info.
9651
9652 * font.c (font_style_to_value, font_score): Delete casting of the
9653 args to xstcasecmp.
9654 (register_font_driver): Increment num_font_drivers only when
9655 registering the driver globally.
9656 (Ffont_info): Move from fontset.c. Handle a font object too.
9657 (syms_of_font): Defsubr Sfont_info.
9658
96592008-05-29 Kenichi Handa <handa@m17n.org>
9660
9661 * coding.h (enum define_coding_utf8_arg_index): New enum.
9662 (enum coding_attr_index): Change coding_attr_utf_16_bom to
9663 coding_attr_utf_bom.
9664 (enum utf_bom_type): Rename from utf_16_bom_type.
9665 (struct utf_16_spec): Adjust for the above change.
9666 (struct coding_system): Add utf_8_bom in `spec' union.
9667
9668 * coding.c (CODING_UTF_8_BOM): New macro.
9669 (enum coding_category): Delete coding_category_utf_8, add
9670 coding_category_utf_8_auto, coding_category_utf_8_nosig, and
9671 coding_category_utf_8_sig.
9672 (CATEGORY_MASK_UTF_8): Delete it.
9673 (CATEGORY_MASK_UTF_8_AUTO, CATEGORY_MASK_UTF_8_NOSIG)
9674 (CATEGORY_MASK_UTF_8_SIG): New macros.
9675 (CATEGORY_MASK_ANY): Delete CATEGORY_MASK_UTF_8, add
9676 CATEGORY_MASK_UTF_8_AUTO, CATEGORY_MASK_UTF_8_NOSIG, and
9677 CATEGORY_MASK_UTF_8_SIG.
9678 (CATEGORY_MASK_UTF_8): New macro.
9679 (UTF_BOM, UTF_8_BOM_1, UTF_8_BOM_2, UTF_8_BOM_3): New macros.
9680 (detect_coding_utf_8): Check BOM.
9681 (decode_coding_utf_8, encode_coding_utf_8): Handle BOM.
9682 (decode_coding_utf_16): Adjust for the change of enum utf_bom_type.
9683 (encode_coding_utf_16): Likewise.
9684 (setup_coding_system): Likewise. Set CODING_UTF_8_BOM (coding).
9685 (detect_coding, detect_coding_system): Handle utf-8-auto.
9686 (Fdefine_coding_system_internal): Handle `bom' property for utf-8.
9687 (syms_of_coding): Fix setting up of Vcoding_category_table.
9688
96892008-05-29 Stefan Monnier <monnier@iro.umontreal.ca>
9690
9691 * process.c (Faccept_process_output): If `millisec' is non-nil,
9692 `seconds' default to 0.
9693 (wait_reading_process_output): Also return non-nil if we read output
9694 from a non-running process.
9695
96962008-05-29 Jason Rumney <jasonr@gnu.org>
9697
9698 * w32font.c (w32font_open_internal): Prefer truetype fonts unless
9699 `raster' specified.
9700 (add_font_entity_to_list): Allow non-opentype truetype fonts back
9701 in the uniscribe backend, but disallow any font that has no
9702 unicode subrange support.
9703
97042008-05-29 Juanma Barranquero <lekktu@gmail.com>
9705
9706 * xfaces.c (Fx_list_fonts, Finternal_copy_lisp_face):
9707 Fix typos in docstrings.
9708
97092008-05-29 Kenichi Handa <handa@m17n.org>
9710
9711 * xfaces.c (Fx_list_fonts): Make it return a list of font names.
9712 (Fx_family_fonts): Set frame correctly.
9713
97142008-05-28 Jason Rumney <jasonr@gnu.org>
9715
9716 * w32term.c (x_draw_glyph_string): Use clipmask if specified.
9717
97182008-05-28 Stefan Monnier <monnier@iro.umontreal.ca>
9719
9720 * fileio.c (Fwrite_region): Delay the defaulting to beg&z to after
9721 calling build_annotations.
9722
97232008-05-28 Juanma Barranquero <lekktu@gmail.com>
9724
9725 * coding.c (Fdecode_coding_region, Fencode_coding_region)
9726 (Fencode_coding_string):
9727 (syms_of_coding) <coding-system-for-read, coding-system-for-write>:
9728 <latin-extra-code-table>: Fix typos in docstrings.
9729 (syms_of_coding) <coding-system-alist>: Doc fix.
9730 (syms_of_coding) <translation-table-for-input>: Reflow docstring.
9731
97322008-05-28 Kenichi Handa <handa@m17n.org>
9733
9734 * fontset.c (Ffont_info): Don't call font_close_object.
9735
9736 * font.c (font_parse_family_registry): Use Ffont_put to validate
9737 foundry and family.
9738 (font_delete_unmatched): Don't check spacing.
9739 (font_list_entities): Add spacing to the spec to list fonts.
9740
9741 * ftfont.c (ftfont_spec_pattern): Don't set FC_SPACING to pattern.
9742 (ftfont_list): Check spacing here. Don't include FC_CHARSET in objset.
9743
9744 * coding.c (encode_coding_raw_text): Fix previous change.
9745 (encode_coding_object): When the dst_object is a buffer and is
9746 different from src_object, move gap to PT.
9747
97482008-05-27 Chong Yidong <cyd@stupidchicken.com>
9749
9750 * xterm.c (x_draw_glyph_string): If a clipmask is specified, use it.
9751
97522008-05-27 Stefan Monnier <monnier@iro.umontreal.ca>
9753
9754 * coding.c (encode_coding_raw_text): Set coding->produced_char for
9755 all branches. Compute it differently.
9756
9757 * xdisp.c [!HAVE_WINDOW_SYSTEM]: Include font.h for --without-x.
9758
97592008-05-27 Juanma Barranquero <lekktu@gmail.com>
9760
9761 * w32font.c (compute_metrics): Rewrite an "else { if () ... else ... }"
9762 into "else if () ... else ...".
9763
97642008-05-27 Jason Rumney <jasonr@gnu.org>
9765
9766 * w32font.c (w32font_open_internal): Determine if glyph indices
9767 are likely to work here.
9768
97692008-05-27 Chong Yidong <cyd@stupidchicken.com>
9770
9771 * xdisp.c (draw_glyphs): If mouse-highlighting is on, attempt to
9772 draw overlap glyphs with appropriate highlighting.
9773
97742008-05-27 Kenichi Handa <handa@m17n.org>
9775
9776 * xfont.c (xfont_open): Fix calculation of font->average_width.
9777
97782008-05-27 Stefan Monnier <monnier@iro.umontreal.ca>
9779
9780 * casefiddle.c (casify_object): Try to guess better whether the
9781 argument is a byte or a char.
9782
97832008-05-26 Andreas Schwab <schwab@suse.de>
9784
9785 * xselect.c (x_reply_selection_request): Properly handle format == 32.
9786 Always send multiples of format size.
9787
9788 * xterm.c (x_set_frame_alpha): Fix type mismatch.
9789
97902008-05-26 Jason Rumney <jasonr@gnu.org>
9791
9792 * w32font.c (w32font_text_extents): Zero whole metrics struct first.
9793 (compute_metrics): Don't set failure if we just cleared the cache.
9794 (w32_weight_table): Remove unused variable.
9795 (w32_enumfont_pattern_entity): Use FONT_SPACING_CHARCELL for
9796 backwards compatibility.
9797
97982008-05-25 Kenichi Handa <handa@m17n.org>
9799
9800 * w32term.c (x_draw_glyph_string):
9801 * xterm.c (x_draw_glyph_string): Fix calculation of underline position.
9802
9803 * xfaces.c: Delete unused function prototypes.
9804 (xstrlwr, font_frame): Delete them.
9805 (clear_face_cache): Delete unused variable.
9806
9807 * xftfont.c (xftfont_open): Delete unused variable.
9808 If underline_thickness is not 1, adjust underline_position.
9809
9810 * ftxfont.c (ftxfont_open): Delete unused variable.
9811
9812 * fontset.c (face_for_char): Optimize for the case of no charset
9813 property.
9814
9815 * font.c (LGSTRING_HEADER_SIZE, LGSTRING_GLYPH_SIZE)
9816 (check_gstring, check_otf_features, otf_list, otf_tag_symbol)
9817 (otf_open, font_otf_capability, generate_otf_features)
9818 (font_otf_DeviceTable, font_otf_ValueRecord, font_otf_Anchor):
9819 Comment out by surrounding "#if 0" and "#endif" for the moment.
9820 (Ffont_drive_otf, Ffont_otf_alternates): Likewise.
9821 (syms_of_font): Codes for accessing above commented out.
9822
98232008-05-24 Eli Zaretskii <eliz@gnu.org>
9824
9825 * w32proc.c: Include dispextern.h.
9826
9827 * w32.c: Include dispextern.h.
9828
98292008-05-23 Juanma Barranquero <lekktu@gmail.com>
9830
9831 * charset.c (Fencode_char, Fsplit_char): Doc fixes.
9832 (Fget_unused_iso_final_char, Fdecode_char, Fiso_charset):
9833 Fix typos in docstrings.
9834
98352008-05-23 Jason Rumney <jasonr@gnu.org>
9836
9837 * xsmfns.c: Remove includes that are already included by config.h.
9838
98392008-05-23 Kenichi Handa <handa@m17n.org>
9840
9841 * charset.c (Qemacs, charset_emacs): New variables.
9842 (char_charset): Fix for non-Unicode characters.
9843 (syms_of_charset): Define charset_emacs.
9844
9845 * w32term.c (x_draw_glyph_string): Be sure to update
9846 s->underline_thickness and s->underline_position. Be sure to draw
9847 underline within the current line area.
9848
9849 * xterm.c (x_draw_glyph_string): Be sure to update
9850 s->underline_thickness and s->underline_position. Be sure to draw
9851 underline within the current line area.
9852
9853 * fontset.c: Delete unused variables and add casting for char *
9854 throughout the file.
9855 (fontset_font): Try the fallback fonts of the current fontset
9856 before consulting the default fontset.
9857
9858 * ftfont.c (ftfont_spec_pattern): Free charset if necessary.
9859
9860 * xfont.c (xfont_list_pattern): Free names returned from XListFonts.
9861
98622008-05-22 Jason Rumney <jasonr@gnu.org>
9863
9864 * font.c: Don't include strings.h.
9865
9866 * dispextern.h, xfaces.c (xstrcasecmp): Rename from xstricmp.
9867
9868 * dosfns.c, fileio.c, font.c, fontset.c, image.c, macfns.c:
9869 * macterm.c, process.c, w32.c, w32fns.c, w32proc.c, xfaces.c:
9870 * xfns.c, xfont.c: All callers of stricmp and strcasecmp changed
9871 to call xstrcasecmp.
9872
9873 * xfont.c (xfont_list_pattern, compare_font_names): Use xstrcasecmp.
9874
9875 * fontset.c (fs_query_fontset): Use xstrcasecmp.
9876
9877 * font.c (font_style_to_value, font_score): Use xstrcasecmp.
9878
9879 * dosfns.c (msdos_stdcolor_idx): Use xstrcasecmp.
9880
98812008-05-22 Kenichi Handa <handa@m17n.org>
9882
9883 * puresize.h (BASE_PURESIZE): Increase to 1220000.
9884
9885 * font.c (font_prop_validate_style): Adjust for the format
9886 change of font_style_table.
9887
9888 * w32font.c (w32font_open_internal): Call Ffont_xlfd_name with
9889 two args.
9890
9891 * xfaces.c (x_update_menu_appearance): Call Ffont_xlfd_name with
9892 two args.
9893
98942008-05-22 Stefan Monnier <monnier@iro.umontreal.ca>
9895
9896 * minibuf.c (keys_of_minibuf): Delete.
9897 * lisp.h (keys_of_minibuf): Delete.
9898 * emacs.c (main): Don't call keys_of_minibuf.
9899
99002008-05-22 Kenichi Handa <handa@m17n.org>
9901
9902 * ftfont.c (ftfont_resolve_generic_family): Rename from
9903 ftfont_list_generic_family. Return a single family for each
9904 generic family.
9905 (ftfont_spec_pattern): Add FC_FAMILY to pattern.
9906 (ftfont_list): Adjust for the change of ftfont_resolve_generic_family.
9907 Call font_add_log.
9908 (ftfont_match): Call font_add_log.
9909
9910 * font.h (Ffont_xlfd_name): EXFUN adjusted.
9911 (FONT_DEBUG): Define it.
9912 (font_add_log): Extern it.
9913 (font_assert): Rename from xassert.
9914
9915 * xfont.c (xfont_get_pcm): Change xassert to font_assert.
9916 (xfont_list_family): Call font_add_log.
9917 (xfont_match): Likewise.
9918 (memq_no_quit): Delete.
9919
9920 * fontset.c (fontset_from_font, Ffontset_info): Add the 2nd arg in
9921 call of Ffont_xlfd_name.
9922
9923 * xfaces.c (struct table_entry, slant_table, weight_table)
9924 (swidth_table): Move to font.c.
9925
9926 * font.c: Checking of FONT_DEBUG is moved to font.h. All calls of
9927 xassert are changed to font_assert. Delete many unused variables.
9928 (Vfont_weight_table, Vfont_slant_table, Vfont_width_table):
9929 New variables.
9930 (struct table_entry): Move from xfaces.c and modified.
9931 (weight_table, slant_table, width_table): Move from xfaces.c and
9932 contents adjusted for the change of struct table_entry.
9933 (font_style_to_value, font_style_symbolic): Adjust for the
9934 format change of font_style_table.
9935 (font_parse_family_registry): Don't overwrite existing foundry and
9936 family of font_spec.
9937 (font_score): Fix calculation of diff for sizes.
9938 (font_sort_entites): Call font_add_log.
9939 (font_delete_unmatched): Return a newly created list.
9940 (font_list_entities): Fix previous change. Call font_add_log.
9941 (font_matching_entity, font_open_entity, font_close_entity):
9942 Call font_add_log.
9943 (Ffont_xlfd_name): New arg FOLD-WILDCARDS.
9944 (Finternal_set_font_style_table): Delete.
9945 (BUILD_STYLE_TABLE): New macro.
9946 (build_style_table): New function.
9947 (Vfont_log, font_log_env_checked): New variables.
9948 (font_add_log): New function.
9949 (syms_of_font): Delete defsubr Sinternal_set_font_style_table.
9950 Declare Lisp variables "font-weight-table", "font-slant-table",
9951 "font-width-table", and "font-log". Initialize font_style_table.
9952
99532008-05-21 Dan Nicolaescu <dann@ics.uci.edu>
9954
9955 * xterm.c (x_set_frame_alpha): Move declarations before statements.
9956
99572008-05-21 Seiji Zenitani <zenitani@mac.com>
9958 Ryo Yoshitake <ryo@shiftmode.net>
9959
9960 * frame.c (Qalpha): Add a new frame parameter `alpha'.
9961 (Vframe_alpha_lower_limit): New variable.
9962 (x_set_alpha): New function.
9963
9964 * frame.h (Qalpha, Vframe_parameter_lower_limit): Export them.
9965
9966 * xfns.c (x-create-frame, Qalpha):
9967 Initialize the frame parameter `alpha'.
9968 * xterm.c (OPAQUE, OPACITY): New.
9969 (x_set_frame_alpha): New function.
9970 (frame_highlight, frame_unhighlight): Call x_set_frame_alpha.
9971
9972 * macfns.c (mac_frame_parm_handlers): A null handler for x_set_alpha.
9973 * w32fns.c (w32_frame_parm_handlers): Likewise.
9974
99752008-05-20 Jason Rumney <jasonr@gnu.org>
9976
9977 * w32font.c (add_font_entity_to_list): Don't add non-opentype
9978 truetype fonts to opentype list.
9979
99802008-05-20 Juanma Barranquero <lekktu@gmail.com>
9981
9982 * fontset.c (Ffontset_info): Doc fix.
9983 (syms_of_fontset) <font-encoding-charset-alist, use-default-ascent>:
9984 <ignore-relative-composition>: Fix typos in docstrings.
9985
9986 * font.c (syms-of-font) <font-encoding-alist>:
9987 (Ffontp, Ffont_make_gstring): Fix typos in docstrings.
9988 (Flist_fonts, Ffont_family_list, Ffont_fill_gstring, Fquery_font)
9989 (Ffont_otf_alternates): Doc fixes.
9990
99912008-05-20 Kenichi Handa <handa@m17n.org>
9992
9993 * Makefile.in (FONTSRC): Delete it. Change all $(FONTSRC) to
9994 font.h through out the file.
9995 (FONT_DRIVERS): Rename from FONTOBJ.
9996 (obj): Change $(FONTOBJ) to $(FONT_DRIVERS). Add font.o.
9997 (SOME_MACHINE_OBJECTS): Change $(FONTOBJ) to $(FONT_DRIVERS).
9998
9999 * emacs.c (main): Call syms_of_font unconditionally.
10000
10001 * font.h (find_font_encoding): Extern it.
10002
10003 * font.c (Vfont_encoding_alist, find_font_encoding): Move from
10004 fontset.c.
10005 (font_pixel_size)[! HAVE_WINDOW_SYSTEM]: Return 1.
10006 (font_open_entity): Update FRAME_X_DISPLAY_INFO (f)->n_fonts,
10007 FRAME_SMALLEST_CHAR_WIDTH (f), and FRAME_SMALLEST_FONT_HEIGHT (f)
10008 only when HAVE_WINDOW_SYSTEM is defined.
10009 (font_close_object): Update FRAME_X_DISPLAY_INFO (f)->n_fonts only
10010 when HAVE_WINDOW_SYSTEM is defined.
10011
10012 * fontset.c (Vfont_encoding_alist, find_font_encoding): Move to font.c.
10013 (syms_of_fontset): Move declaration of font-encoding-alist to font.c.
10014
10015 * xfaces.c: Include font.h unconditionally.
10016 (merge_face_ref, merge_face_vectors)
10017 (Finternal_set_lisp_face_attribute): Cancel the previous change.
10018
100192008-05-20 Stefan Monnier <monnier@iro.umontreal.ca>
10020
10021 * xdisp.c (select_frame_for_redisplay): Adjust for last change to
10022 indirect_variable.
10023 * eval.c (lisp_indirect_variable): New fun.
10024 (Fuser_variable_p): Use it.
10025
100262008-05-19 Stefan Monnier <monnier@iro.umontreal.ca>
10027
10028 * lisp.h (indirect_variable):
10029 * data.c (indirect_variable, let_shadows_buffer_binding_p):
10030 Use Lisp_Symbol pointers rather than Lisp_Object.
10031 Adjust callers.
10032 * buffer.c (buffer_slot_type_mismatch): Use wrong-type-argument.
10033 To this end, change calling-convention.
10034
10035 * minibuf.c (Finternal_complete_buffer): Only strip out hidden buffers
10036 if some non-hidden buffers are selected by string&pred.
10037
100382008-05-19 Chong Yidong <cyd@stupidchicken.com>
10039
10040 * process.c (wait_reading_process_output): Always check status
10041 when in batch mode.
10042
100432008-05-19 Kenichi Handa <handa@m17n.org>
10044
10045 * font.c (font_list_entities): Fix handling of cache.
10046 (font_matching_entity): Likewise.
10047
10048 * ftfont.c (cs_iso8859_1): Delete.
10049 (ft_face_cache): New variable.
10050 (struct ftfont_info): New member fc_charset_idx.
10051 (ftfont_build_basic_charsets): Delete.
10052 (fc_charset_table): New variable.
10053 (ftfont_pattern_entity): New arg fc_charset_idx. Store (FILENAME
10054 . FC_CHARSET_IDX) as :font-entity property in the font entity.
10055 Callers changed.
10056 (ftfont_lookup_cache, ftfont_get_charset): New functions.
10057 (ftfont_spec_pattern): New argument fc_charset_idx.
10058 Check registry more rigidly. Change callers.
10059 (ftfont_open, ftfont_close, ftfont_has_char): Adjust for the
10060 change of :font-entity property of the font.
10061
10062 * xftfont.c (xftfont_open): Adjust for the change of :font-entity
10063 property of the font.
10064
100652008-05-18 Juanma Barranquero <lekktu@gmail.com>
10066
10067 * coding.c (Fcoding_system_p): Rename argument to match docstring.
10068 (Funencodable_char_position, Fcheck_coding_systems_region)
10069 (Fdecode_coding_string, Fencode_coding_string): Fix typos in docstrings.
10070 (Fdetect_coding_region, Fdetect_coding_string, Fencode_coding_region)
10071 (Ffind_operation_coding_system, Fset_coding_system_priority)
10072 (Fcoding_system_eol_type): Doc fixes.
10073
100742008-05-17 Glenn Morris <rgm@gnu.org>
10075
10076 * sysdep.c (child_setup_tty): Handle systems with NLDLY, without FFDLY.
10077
100782008-05-16 Eli Zaretskii <eliz@gnu.org>
10079
10080 * dired.c (Ffile_attributes): Shut up GCC warnings about st_uid
10081 and st_gid.
10082
10083 * frame.c (Fdelete_frame): Don't call font_update_drivers if
10084 HAVE_WINDOW_SYSTEM is not defined.
10085
10086 * xfaces.c (merge_face_ref, merge_face_vectors)
10087 (Finternal_set_lisp_face_attribute): Use FONT_*_INDEX only when
10088 HAVE_WINDOW_SYSTEM is defined.
10089 (Fface_font): Fix non-HAVE_WINDOW_SYSTEM case.
10090
100912008-05-16 Stefan Monnier <monnier@iro.umontreal.ca>
10092
10093 * keyboard.c (parse_menu_item): Do not cache key shortcut any more.
10094
100952008-05-15 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
10096
10097 * macterm.c (x_draw_relief_rect): Remove unused variable `dpy'.
10098
100992008-05-15 Kenichi Handa <handa@m17n.org>
10100
10101 * font.c (font_find_for_lface): Reflect LFACE_FONT in the font
10102 preference.
10103
101042008-05-15 Glenn Morris <rgm@gnu.org>
10105
10106 * emacs.c (USAGE1, standard_args): Remove -disable-font-backend.
10107
101082008-05-15 Chong Yidong <cyd@stupidchicken.com>
10109
10110 * fns.c (init_fns): Don't initialize weak_hash_tables here.
10111 (init_weak_hash_tables): New fun. Initialize weak_hash_tables.
10112
10113 * alloc.c (init_alloc_once): Call init_weak_hash_tables.
10114
101152008-05-15 Kenichi Handa <handa@m17n.org>
10116
10117 * ftfont.c (ftfont_list): Downcase family name to check generic
10118 families.
10119
10120 * xfaces.c (Finternal_set_lisp_face_attribute): Be sure to make a
10121 font-spec for QCfont value.
10122
10123 * fontset.c (Fnew_fontset): Call font_unparse_xlfd with 256-byte
10124 buffer. Check the return value of it.
10125
101262008-05-14 Jason Rumney <jasonr@gnu.org>
10127
10128 * w32term.c (w32_get_glyph_overhangs): Remove.
10129 (w32_redisplay_interface): Use x_get_glyph_overhangs instead.
10130
101312008-05-14 Kenichi Handa <handa@m17n.org>
10132
10133 * font.c (font_prop_validate): Make nil a valid value.
10134 (font_clear_cache): Check if the cached vector of entities is nil
10135 or not.
10136
101372008-05-14 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
10138
10139 * emacs.c (main_thread): Conditionalize on
10140 FORWARD_SIGNAL_TO_MAIN_THREAD instead of HAVE_GTK_AND_PTHREAD.
10141 (main) [FORWARD_SIGNAL_TO_MAIN_THREAD]: Initialize it.
10142
10143 * syssignal.h (FORWARD_SIGNAL_TO_MAIN_THREAD): New define.
10144 (main_thread, SIGNAL_THREAD_CHECK): Conditionalize on
10145 FORWARD_SIGNAL_TO_MAIN_THREAD instead of HAVE_GTK_AND_PTHREAD.
10146
101472008-05-14 Kenichi Handa <handa@m17n.org>
10148
10149 * coding.c (detect_coding_iso_2022): Ignore a coding category that
10150 has no corresponding coding system.
10151
101522008-05-14 Jason Rumney <jasonr@gnu.org>
10153
10154 * font.h (struct font) [WINDOWSNT]: Remove codepage member.
10155
10156 * w32font.h (w32font_open_internal): Update declaration.
10157
10158 * w32font.c (w32font_open_internal): Change last argument from
10159 w32font_info struct to font object. Fill in font object from
10160 font_entity. Get Outline metrics if possible. Use them to
10161 calculate underline position and thickness. Use xlfd name as name
10162 property. Don't set codepage.
10163 (w32font_open): Pass font_object to w32font_open_internal. Don't
10164 update dpyinfo->smallest_font_height and dpyinfo->smallest_char_width.
10165 (w32font_draw): Use s->font.
10166 (clear_cached_metrics): Don't clear non-existent blocks.
10167
10168 * w32term.c (w32_compute_glyph_string_overhangs): Don't compute if
10169 font was not found.
10170 (x_draw_glyph_string): Use underline position and thickness from font.
10171
10172 * w32uniscribe.c (uniscribe_open): Pass font_object to
10173 w32font_open_internal.
10174
101752008-05-14 Kenichi Handa <handa@m17n.org>
10176
10177 These changes are to delete all legacy font-handling codes, and
10178 make Emacs use only font-backends.
10179
10180 * Makefile.in: Delete USE_FONT_BACKEND conditionals.
10181 (frame.o, image.o, print.o): Depend on $(FONTSRC).
10182
10183 * makefile.w32-in (WIN32OBJ): Add w32reg.$(O), remove w32bdf.$(O).
10184
10185 * charset.h (Vcharset_non_preferred_head)
10186 (Vcurrent_iso639_language): Extern them.
10187
10188 * charset.c (Vcharset_non_preferred_head): New variable.
10189 (Vcurrent_iso639_language): New variable.
10190 (syms_of_charset): Declare it as a Lisp variable.
10191 (char_charset): Don't check non preferred charsets. As a last
10192 resort, return charset_unicode.
10193 (Fset_charset_priority): Update Vcharset_non_preferred_head.
10194
10195 * composite.c: Throughout the file, delete all USE_FONT_BACKEND
10196 conditionals. Don't check enable_font_backend. Delete all codes
10197 used only when USE_FONT_BACKEND is not defined.
10198
10199 * dispextern.h (struct glyph_string): Change type of `font' to
10200 `struct font *'.
10201 (struct glyph_string): New member underline_position and
10202 underline_thickness.
10203 (enum lface_attribute_index): Remove LFACE_AVGWIDTH_INDEX.
10204 (struct face): Change type of `font' to `struct font *'. Remove
10205 members `font_name', `font_info_id'.
10206 (per_char_metric, encode_char): Delete externs.
10207 (calc_pixel_width_or_height): Adjust the prototype.
10208
10209 * emacs.c (enable_font_backend): Delete extern.
10210 (main): Don't set enable_font_backend. Don't check the command
10211 line argument "-disable-font-backend".
10212
10213 * font.h (Qfont_spec, Qfont_entity, Qfont_object): Extern them.
10214 (enum font_property_index): New members FONT_DPI_INDEX,
10215 FONT_SPACING_INDEX, FONT_AVGWIDTH_INDEX, FONT_NAME_INDEX,
10216 FONT_FULLNAME_INDEX, FONT_FILE_INDEX, FONT_FORMAT_INDEX,
10217 FONT_OBJECT_MAX. Delete FONT_FRAME_INDEX.
10218 (FONT_WEIGHT_NUMERIC, FONT_SLANT_NUMERIC, FONT_WIDTH_NUMERIC)
10219 (FONT_WEIGHT_SYMBOLIC, FONT_SLANT_SYMBOLIC, FONT_WIDTH_SYMBOLIC)
10220 (FONT_WEIGHT_FOR_FACE, FONT_SLANT_FOR_FACE, FONT_WIDTH_FOR_FACE)
10221 (FONT_WEIGHT_NAME_NUMERIC, FONT_SLANT_NAME_NUMERIC)
10222 (FONT_WIDTH_NAME_NUMERIC, FONT_SET_STYLE): New macros.
10223 (struct font_spec, struct font_entity): New structs.
10224 (FONT_ENCODING_NOT_DECIDED): Moved from fontset.h.
10225 (struct font): Many members from old "struct font_info" moved to
10226 here. Members font and entity deleted.
10227 (FONT_SPEC_P, FONT_ENTITY_P, FONT_OBJECT_P, FONTP): Modified for
10228 the new font-related objects.
10229 (CHECK_FONT_SPEC, CHECK_FONT_ENTITY, CHECK_FONT_OBJECT)
10230 (CHECK_FONT_GET_OBJECT): Likewise.
10231 (XFONT_SPEC, XFONT_ENTITY, XFONT_OBJECT, XSETFONT): New macros.
10232 (PT_PER_INCH, POINT_TO_PIXEL, PIXEL_TO_POINT): Moved from font.h.
10233 (struct font_driver): New members case_sensitive anc check. Type
10234 of the member list and open changed.
10235 (enable_font_backend, font_symbolic_weight, font_symbolic_slant)
10236 (font_symbolic_width, font_find_object, font_get_spec)
10237 (font_set_lface_from_name): Delete extern.
10238 (Fcopy_font_spec, Fmerge_font_spec, Ffont_family_list): New EXFUNs.
10239
10240 * font.c: Include <strings.h>.
10241 (enable_font_backend): Delete it.
10242 (Qfont_spec, Qfont_entity, Qfont_object): New variables.
10243 (CHECK_VALIDATE_FONT_SPEC): Delete it.
10244 (PT_PER_INCH, POINT_TO_PIXEL, PIXEL_TO_POINT): Moved to font.h.
10245 (null_string): Delete it.
10246 (null_vector): Make it static.
10247 (font_family_alist): Delete it.
10248 (Qnormal): Extern it.
10249 (QCextra, QClanguage): Delete it.
10250 (QClang, QCavgwidth, QCfont_entity, QCfc_unknown_spec): New variables.
10251 (font_make_spec, font_make_entity, font_make_object)
10252 (font_intern_prop): Renamed from intern_downcase. Don't downcase
10253 the string. Callers changed.
10254 (font_pixel_size): Adjusted for the format change of font-related
10255 objects.
10256 (prop_name_to_numeric, prop_numeric_to_name): Delete them.
10257 (font_style_to_value, font_style_symbolic): New function.
10258 (build_font_family_alist): Delete it.
10259 (font_registry_charsets): Use Fassoc_string instead of
10260 assq_no_quit.
10261 (font_prop_validate_symbol): Don't return null_string.
10262 (font_prop_validate_style): Adjusted for the change of
10263 style-related values in a font vector.
10264 (font_property_table): Delete entries for QClanguage and
10265 QCantialias, add entries for QCavgwidth.
10266 (get_font_prop_index): Delete the 2nd argument FROM.
10267 (font_prop_validate): Arguments changed.
10268 (font_put_extra): Adjusted for the change of font-related objects.
10269 (font_expand_wildcards, font_parse_xlfd, font_unparse_xlfd)
10270 (font_parse_fcname, font_unparse_fcname)
10271 (font_prepare_composition): Likewise.
10272 (font_parse_family_registry): Renamed from font_merge_old_spec.
10273 (otf_open): Delete the 1st arg entity.
10274 (font_otf_capability): Adjusted for the above change.
10275 (font_score): New arg alternate_families. Adjusted for the change
10276 of font-related objects.
10277 (font_sort_entites): New arg best_only.
10278 (font_symbolic_weight, font_symbolic_slant, font_symbolic_width):
10279 Delete them.
10280 (font_match_p): Check alternate families.
10281 (font_find_object): Delete it.
10282 (font_check_object): New function.
10283 (font_clear_cache): Adjusted for the change of font-related objects.
10284 (font_delete_unmatched): New arg.
10285 (font_list_entities): Call font_driver->list with a spec that
10286 doesn't specify style-related properties.
10287 (font_matching_entity): Arguments changed. Caller changed.
10288 (font_open_entity): Adjusted for the change of font-related objects.
10289 (font_close_object, font_has_char, font_encode_char)
10290 (font_get_name, font_get_spec): Likewise.
10291 (font_spec_from_name, font_clear_prop, font_update_lface):
10292 New functions.
10293 (font_find_for_lface, font_open_for_lface, font_load_for_lface)
10294 (font_prepare_for_face, font_done_for_face, font_open_by_name)
10295 (font_at): Adjusted for the change of font-related objects.
10296 (font_range): New function.
10297 (Ffontp, Ffont_spec, Ffont_get, Ffont_put, Flist_fonts)
10298 (Ffont_xlfd_name): Adjusted for the change of font-related objects.
10299 (Fcopy_font_spec, Fmerge_font_spec): New function.
10300 (Ffont_family_list): Renamed from list-families.
10301 (Finternal_set_font_style_table): Arguments changed.
10302 (Ffont_fill_gstring, Ffont_shape_text, Fopen_font)
10303 (Ffont_drive_otf, Fquery_font, Ffont_match_p): Adjusted for the
10304 change of font-related objects.
10305 (syms_of_font): Delete "ifdef USE_FONT_BACKEND". DEFSYM new symbols.
10306
10307 * fontset.h (struct font_info): Delete it. Most members go to
10308 struct font.
10309 (FONT_ENCODING_NOT_DECIDED): Moved to font.h.
10310 (enum FONT_SPEC_INDEX): Delete it.
10311 (font_info, list_fonts_func, load_font_func, query_font_func)
10312 (set_frame_fontset_func, find_ccl_program_func)
10313 (get_font_repertory_func, new_fontset_from_font_name): Delete
10314 externs.
10315 (fontset_from_font_name): Extern it.
10316 (FS_LOAD_FONT, FONT_INFO_ID, FONT_INFO_FROM_ID)
10317 (FONT_INFO_FROM_FACE): Deleted.
10318 (face_for_font): Adjust prototype.
10319
10320 * fontset.c: Throughout the file, delete all USE_FONT_BACKEND
10321 conditionals. Don't check enable_font_backend. Delete all codes
10322 used only when USE_FONT_BACKEND is not defined.
10323 (get_font_info_func, list_font_func, load_font_func)
10324 (query_font_func, set_frame_fontset_func, find_ccl_program_func)
10325 (get_font_repertory_func): Delete them.
10326 (FONTSET_SPEC, FONT_DEF_NEW, FONT_DEF_SPEC, FONT_DEF_ENCODING)
10327 (FONT_DEF_REPERTORY, RFONT_DEF_FACE, RFONT_DEF_SET_FACE)
10328 (RFONT_DEF_FONT_DEF, RFONT_DEF_SPEC, RFONT_DEF_REPERTORY)
10329 (RFONT_DEF_OBJECT, RFONT_DEF_SET_OBJECT, RFONT_DEF_SCORE)
10330 (RFONT_DEF_SET_SCORE, RFONT_DEF_NEW): New macros.
10331 (fontset_compare_rfontdef): New function.
10332 (reorder_font_vector): Remove the argument CHARSET-ID. Sort
10333 rfont-defs by qsort. Adjusted for the change of font-group vector.
10334 (load_font_get_repertory): Deleted.
10335 (fontset_find_font): Use new macros to ref/set elements of
10336 font-def and rfont-def.
10337 (fontset_font): Fix the timing of remembering that no font for C.
10338 (free_face_fontset): Do nothing if the face has no fontset.
10339 (face_suitable_for_char_p): Use new macros to ref/set elements of
10340 rfont-def.
10341 (face_for_char): Likewise. Call face_for_char with font_object.
10342 (fs_load_font): Delete. Delete #pragma surrounding it.
10343 (fs_query_fontset): Use strcasecmp instead of strcmp.
10344 (generate_ascii_font_name): Adjusted for the format change of
10345 font-spec.
10346 (Fset_fontset_font): Likewise. Use new macros to set elements of
10347 font-def.
10348 (Fnew_fontset): Use font_unparse_xlfd to generate
10349 FONTSET_ASCII (fontset).
10350 (new_fontset_from_font_name): Deleted.
10351 (fontset_from_font): Renamed from new_fontset_from_font. Check if
10352 a fontset is already created for the font. FIx updating of
10353 Vfontset_alias_alist.
10354 (fontset_ascii_font): Deleted.
10355 (Ffont_info): Adjusted for the format change of font-spec.
10356 (Finternal_char_font): Likewise.
10357 (Ffontset_info): Likewise.
10358 (syms_of_fontset): Don't check load_font_func.
10359
10360 * fns.c (internal_equal): Handle PREV_FONT.
10361
10362 * frame.h: Delete USE_FONT_BACKEND conditional.
10363
10364 * frame.c: Throughout the file, delete all USE_FONT_BACKEND
10365 conditionals. Don't check enable_font_backend. Delete all codes
10366 used only when USE_FONT_BACKEND is not defined.
10367 (x_set_font): Call x_new_font, not x_new_fontset2.
10368 (x_set_font_backend): Use FRAME_FONT macro to check if a font is
10369 already set for the frame.
10370
10371 * ftfont.c (ftfont_pattern_entity): Argument FRAME removed. Make
10372 a font-entity by font_make_entity. Use font_intern_prop instead
10373 of intern_downcase. Use FONT_SET_STYLE to set a style-related
10374 font property. If a font is scalable, set avgwidth property to 0.
10375 Set font-entity property by font_put_extra.
10376 (ftfont_list_generic_family): Argument SPEC and REGISTRY removed.
10377 (ffont_driver): Adjusted for the change of struct font_driver.
10378 (ftfont_spec_pattern): New function.
10379 (ftfont_list): Return a list, not vector.
10380 (ftfont_match): Use ftfont_spec_pattern to get a pattern.
10381 (ftfont_list_family): Don't downcase names.
10382 (ftfont_free_entity): Deleted.
10383 (ftfont_open): Return a font-object. Adjusted for the change of
10384 struct font. Get underline_thickness and underline_position from
10385 font property. Don't update dpyinfo->smallest_font_height and
10386 dpyinfo->smallest_char_width.
10387 (ftfont_close): Don't free `struct font'.
10388 (ftfont_has_char): Adjusted for the format change of font-entity.
10389 (ftfont_encode_char, ftfont_text_extents): Likewise.
10390
10391 * ftxfont.c (ftxfont_list): Return a list, not vector.
10392 (ftxfont_open): Return a font-object. Adjusted for the change of
10393 struct font. Get underline_thickness and underline_position from
10394 font property. Don't update dpyinfo->smallest_font_height and
10395 dpyinfo->smallest_char_width.
10396 (ftxfont_close): Don't decrease FRAME_X_DISPLAY_INFO (f)->n_fonts.
10397 (ftxfont_draw): Adjusted for the change of struct font.
10398
10399 * image.c (image_ascent): Don't include "charset.h". Include
10400 "character.h" and "font.h".
10401
10402 * lisp.h (enum pvec_type): New member PREV_FONT.
10403 (Fassoc_string): EXFUN it.
10404
10405 * print.c: Include font.h.
10406 (print_object): Handle font-related objects.
10407
10408 * xdisp.c: Throughout the file, delete all USE_FONT_BACKEND
10409 conditionals. Don't check enable_font_backend. Delete all codes
10410 used only when USE_FONT_BACKEND is not defined.
10411 (handle_auto_composed_prop): Do nothing if it->f is not on a
10412 window system. Check how many following characters can be
10413 displayed by the same font.
10414 (calc_pixel_width_or_height): Type of the 4th arg is changed to
10415 'struct font *'.
10416 (get_char_face_and_encoding): Assign the whole encoding task to
10417 the `encode-char' method of a font driver.
10418 (fill_composite_glyph_string): Adjusted for the change of `struct
10419 face' and `struct glyph_string'.
10420 (fill_glyph_string): Likewise.
10421 (get_per_char_metric): Arguments changed.
10422 (x_get_glyph_overhangs): Adjusted for the change of `struct face'
10423 and `struct glyph_string'.
10424 (produce_stretch_glyph, calc_line_height_property)
10425 (x_produce_glyphs): Likewise.
10426
10427 * xfaces.c: Throughout the file, delete all USE_FONT_BACKEND
10428 conditionals. Don't check enable_font_backend. Delete all codes
10429 used only when USE_FONT_BACKEND is not defined. Use
10430 FONT_XXX_NAME_NUMERIC instead of face_numeric_xxx.
10431 (QCfoundry, QCadstyle, QCregistry, QCspacing, QCsize, QCavgwidth)
10432 (Qp): Extern them.
10433 (clear_font_table, load_face_font, xlfd_lookup_field_contents):
10434 Deleted.
10435 (struct font_name): Deleted.
10436 (xlfd_numeric_value, xlfd_symbolic_value): Deleted.
10437 (compare_fonts_by_sort_order): New function.
10438 (xlfd_numeric_slant, xlfd_symbolic_slant, xlfd_numeric_weight)
10439 (xlfd_symbolic_weight, xlfd_numeric_swidth, xlfd_symbolic_swidth):
10440 Deleted.
10441 (Fx_family_fonts): Use font_list_entities, and sort fonts by
10442 compare_fonts_by_sort_order.
10443 (Fx_font_family_list): Call Ffont_family_list.
10444 (face_numeric_value, face_numeric_weight, face_numeric_slant)
10445 (face_numeric_swidth, face_symbolic_value, face_symbolic_weight)
10446 (face_symbolic_slant, face_symbolic_swidth)
10447 (split_font_name_into_vector, build_font_name_from_vector)
10448 (xlfd_fixed_p, xlfd_point_size, pixel_point_size)
10449 (font_rescale_ratio, split_font_name, build_font_name)
10450 (free_font_names, sort_fonts, x_face_list_fonts)
10451 (face_font_available_p, sorted_font_list, cmp_font_names)
10452 (font_list_1, concat_font_list, font_list, remove_duplicates):
10453 Deleted.
10454 (Fx_list_fonts): Use Ffont_list.
10455 (LFACE_AVGWIDTH): Deleted.
10456 (check_lface_attrs): Don't check LFACE_AVGWIDTH. Check LFACE_FONT
10457 by FONTP.
10458 (lface_fully_specified_p): Don't check LFACE_AVGWIDTH.
10459 (set_lface_from_font_name): Delete it.
10460 (set_lface_from_font): Renamed from
10461 set_lface_from_font_and_fontset. Caller changed. Don't set
10462 LFACE_AVGWIDTH. Use FONT_XXX_FOR_FACE to get a symbol suitable
10463 for face.
10464 (merge_face_vectors): Copy font-spec if necessary.
10465 Clear properties of the font-spec if necessary.
10466 (merge_face_ref): Clear properties of the font-spec if necessary.
10467 (Finternal_set_lisp_face_attribute): Likewise.
10468 (set_font_frame_param): Use font_load_for_lface to load a
10469 font-object, and call Fmodify_frame_parameters with it.
10470 (x_update_menu_appearance): Don't check LFACE_AVGWIDTH. Get XLFD
10471 font name by Ffont_xlfd_name.
10472 (Finternal_lisp_face_attribute_values): Don't check QCweight,
10473 QCslant, and QCwidth.
10474 (Fface_font): Get a font name from font->props[FONT_NAME_INDEX].
10475 (lface_same_font_attributes_p): Don't check LFACE_AVGWIDTH.
10476 Compare fonts by EQ.
10477 (lookup_non_ascii_face): Deleted.
10478 (face_for_font): The 2nd argument changed.
10479 (x_supports_face_attributes_p): Don't check LFACE_AVGWIDTH.
10480 Check atomic font properties by case insensitive.
10481 (realize_non_ascii_face): Set face->overstrike correctly.
10482 (realize_x_face): Likewise. Check if LFACE_FONT is a font_object.
10483 (dump_realized_face): Get font name from
10484 font->props[FONT_NAME_INDEX]. Don't print font_info_id.
10485
10486 * xfns.c: Throughout the file, delete all USE_FONT_BACKEND
10487 conditionals. Don't check enable_font_backend. Delete all codes
10488 used only when USE_FONT_BACKEND is not defined.
10489 (xic_create_xfontset): Original code deleted and renamed from
10490 xic_create_xfontset2. Use FRAME_FONT, not FRAME_FONT_OBJECT.
10491 (x_make_gc): Don't set GCFont in GCs.
10492 (Fx_create_frame) [USE_LUCID]: Set xlwmenu_default_font to a font
10493 opened by "fixed".
10494 (syms_of_xfns): Don't set get_font_info_func, load_font_func,
10495 find_ccl_program_func, query_font_func, set_frame_fontset_func,
10496 get_font_repertory_func.
10497
10498 * xfont.c: Include <stdlib.h> and "ccl.h".
10499 (struct xfont_info): New structure.
10500 (xfont_query_font): Deleted.
10501 (xfont_find_ccl_program): Renamed from x_find_ccl_program and
10502 moved from xterm.c.
10503 (xfont_driver): Adjusted for the change of struct font_driver.
10504 (compare_font_names): New function.
10505 (xfont_list_pattern): Sort font names case insensitively. Make
10506 font_entity by calling font_make_entity. Avoid auto-scaled fonts.
10507 (xfont_list): Return a list, not vector.
10508 (xfont_match): If the font doesn't have QCname property, generate
10509 a name from the other font properties.
10510 (xfont_open): Return a font-object. Adjusted for the change of
10511 struct font. Get underline_thickness and underline_position from
10512 font property. Don't update dpyinfo->smallest_font_height and
10513 dpyinfo->smallest_char_width.
10514 (xfont_close): Don't free struct font.
10515 (xfont_prepare_face): Adjusted for the change of struct font.
10516 (xfont_done_face): Deleted.
10517 (xfont_has_char): Adjusted for the change of struct font.
10518 (xfont_encode_char, xfont_draw): Likewise.
10519 (xfont_check): New function.
10520
10521 * xftfont.c (xftfont_list): Adjusted for the change of `list'
10522 callback function.
10523 (xftfont_match): Adjusted for the format change of font-entity.
10524 (xftfont_open): Adjusted for the format change of font-entity and
10525 font-object. Adjusted for the change of struct font. Return a
10526 font-object. Don't update dpyinfo->smallest_font_height and
10527 dpyinfo->smallest_char_width.
10528 (xftfont_close): Block input while calling XftFontClose.
10529 (xftfont_prepare_face): Don't block input while calling
10530 xftfont_get_colors. Adjusted for the change of struct font.
10531 (xftfont_shape): Return value of error case fixed.
10532
10533 * xrdb.c (x_load_resources): Don't setup a fontset resource.
10534
10535 * xterm.h: Throughout the file, delete all USE_FONT_BACKEND
10536 conditionals.
10537 (FONT_WIDTH): Return (f)->max_width.
10538 (struct x_display_info): Delete member `font'.
10539 (x_list_fonts, x_get_font_info, x_load_font, x_query_font)
10540 (x_find_ccl_program, x_get_font_repertory): Delete externs.
10541 (struct x_output): Change type of `font' to `struct font *'.
10542
10543 * xterm.c: Throughout the file, delete all USE_FONT_BACKEND
10544 conditionals. Don't check enable_font_backend. Delete all codes
10545 used only when USE_FONT_BACKEND is not defined. Don't include ccl.h.
10546 (x_per_char_metric, x_encode_char): Deleted.
10547 (x_set_cursor_gc, x_set_mouse_face_gc): Don't set GCFont.
10548 (x_compute_glyph_string_overhangs): Adjusted for the change of
10549 `struct face'.
10550 (x_draw_glyph_string_foreground)
10551 (x_draw_composite_glyph_string_foreground): Likewise.
10552 (x_draw_glyph_string): Likewise. Use font->underline_position and
10553 font->underline_thickness.
10554 (x_new_font): Renamed from x_new_fontset2.
10555 (x_new_fontset, x_get_font_info, x_list_fonts): Deleted.
10556 (x_check_font): Call `check' method of a font driver.
10557 (x_font_min_bounds, x_compute_min_glyph_bounds, x_load_font)
10558 (x_query_font, x_get_font_repertory): Deleted.
10559 (x_find_ccl_program): Renamed and moved to xfont.c.
10560 (x_redisplay_interface): Adjusted for the change of `struct
10561 redisplay_interface'.
10562
10563 * w32fns.c: Throughout the file, delete all USE_FONT_BACKEND
10564 conditionals. Don't check enable_font_backend. Delete all codes
10565 used only when USE_FONT_BACKEND is not defined. Surround non-used
10566 code by "#ifdef OLD_FONT" and "endif".
10567 (Fw32_select_font): Use FONT_COMPAT to get old font structure.
10568
10569 * w32font.h (struct w32font_info): New member.
10570 (FONT_COMPAT): New macro.
10571 (w32font_open_internal): Prototype adjusted.
10572
10573 * w32gui.h (XGCValues): Surround `XFontStruct *font' by "if
10574 OLD_FONT" and "endif".
10575
10576 * w32font.c: Throughout the file, delete all USE_FONT_BACKEND
10577 conditionals. Don't check enable_font_backend. Delete all codes
10578 used only when USE_FONT_BACKEND is not defined.
10579 (w32font_open): Return a font-object. Make a font-object by
10580 font_make_object. Adjusted for the change of struct w32font_info.
10581 (w32font_close): Don't free struct font. Adjusted for the change
10582 of struct w32font_info.
10583 (w32font_encode_char, w32font_text_extents, w32font_draw):
10584 Adjusted for the change of struct w32font_info.
10585 (w32font_draw): Likewise.
10586 (w32font_list_internal): Return a list, not vector.
10587 (w32font_open_internal): Change the 4th arg to font-object.
10588 Adjusted for the change of struct w32font_info and font-object format.
10589 (add_font_name_to_list): Don't downcase names.
10590 (w32_enumfont_pattern_entity): Make a font-entity by
10591 font_make_entity. Adjusted for the format change of font-entity.
10592 Use FONT_SET_STYLE to set a style-related font property. If a
10593 font is scalable, set avgwidth property to 0. Set font-entity
10594 property by font_put_extra.
10595 (font_matches_spec): Adjusted for the format change of font-entity.
10596 (w32_weight_table, w32_decode_weight): New variables.
10597 (w32_encode_weight): New function.
10598 (fill_in_logfont): Adjusted for the format change of font-spec.
10599 (w32font_full_name): Use FONT_WEIGHT_SYMBOLIC to get a symbol
10600 weight value.
10601 (w32font_driver): Adjusted for the change of struct font_driver.
10602
10603 * w32term.h: Throughout the file, delete all USE_FONT_BACKEND
10604 conditionals. Don't check enable_font_backend. Surround non-used
10605 code by "#ifdef OLD_FONT" and "endif".
10606 (FONT_WIDTH, FONT_HEIGHT, FONT_BASE, FONT_DESCENT)
10607 (FONT_AVG_WIDTH): Adjusted for the change of struct font.
10608
10609 * w32term.c: Throughout the file, delete all USE_FONT_BACKEND
10610 conditionals. Don't check enable_font_backend. Delete all codes
10611 used only when USE_FONT_BACKEND is not defined. Surround non-used
10612 code by "#ifdef OLD_FONT" and "endif".
10613
10614 * w32uniscribe.c: Delete USE_FONT_BACKEND conditional.
10615 (uniscribe_open): Return value changed to font-object.
10616 Adjusted for the format change of font-object.
10617 (uniscribe_otf_capability): Adjusted for the change of struct font.
10618 (add_opentype_font_name_to_list): Don't downcase names.
10619 (uniscribe_font_driver): Adjusted for the change of struct
10620 font_driver.
10621
106222008-05-13 Chong Yidong <cyd@stupidchicken.com>
10623
10624 * dispnew.c (update_frame_1): Check if tty output is still valid
10625 before flushing it.
10626
106272008-05-13 Jan Djärv <jan.h.d@swipnet.se>
10628
10629 * xterm.c (handle_one_xevent): Don't pass buttons higher than 3
10630 to Gtk+ menus.
10631
106322008-05-13 Stefan Monnier <monnier@iro.umontreal.ca>
10633
10634 * dired.c (file_name_completion): Tweak the code so as to always do it
10635 in a single pass. Tighten the scope of some variables.
10636
10637 * dired.c (Qdefault_directory): New var.
10638 (file_name_completion): Use it instead of Fexpand_file_name.
10639 (syms_of_dired): Initialize it.
10640
106412008-05-12 Stefan Monnier <monnier@iro.umontreal.ca>
10642
10643 * fileio.c (double_dollars): Remove dead code.
10644
106452008-05-10 Eli Zaretskii <eliz@gnu.org>
10646
10647 * dired.c (Ffile_attributes, Fdirectory_files_and_attributes):
10648 Mention w32-get-true-file-attributes in doc string.
10649
10650 * w32proc.c (syms_of_ntproc) <w32-get-true-file-attributes>: Doc fix.
10651
106522008-05-09 Glenn Morris <rgm@gnu.org>
10653
10654 * fileio.c (Fread_file_name): Remove reference to insdef, deleted
10655 2008-04-23.
10656
106572008-05-09 Eli Zaretskii <eliz@gnu.org>
10658
10659 Support for reporting owner and group of each file on MS-Windows:
10660 * dired.c (stat_uname, stat_gname): New functions, with special
10661 implementation for w32.
10662 (Ffile_attributes): Use them instead of getpwuid and getgrgid.
10663
10664 * w32.c: Rename the_passwd_* to dflt_passwd_*.
10665 (dflt_group_name): New static variable.
10666 (dflt_group): Rename from the_group.
10667 (init_user_info): Init dflt_group fields. Get user's group name
10668 from LookupAccountSid.
10669 (g_b_init_get_file_security, g_b_init_get_security_descriptor_owner)
10670 (g_b_init_get_security_descriptor_group, g_b_init_is_valid_sid):
10671 New initialization states.
10672 (globals_of_w32): Initialize them to zero. Initialize the default
10673 group name to "None".
10674 (GetFileSecurity_Name): New global var, the name of the function
10675 to call for GetFileSecurity.
10676 (GetFileSecurity_Proc, GetSecurityDescriptorOwner_Proc)
10677 (GetSecurityDescriptorGroup_Proc, IsValidSid_Proc): New typedefs.
10678 (get_file_security, get_security_descriptor_owner)
10679 (get_security_descriptor_group, is_valid_sid)
10680 (get_file_security_desc, get_rid, get_name_and_id)
10681 (get_file_owner_and_group): New functions.
10682 (stat): Use get_file_security_desc and get_file_owner_and_group to
10683 report the owner and primary group of each file. Don't ignore the
10684 high 32 bits of file's size, now that st_size is 64-bit wide.
10685 Fix test when to get true file attributes.
10686 (init_user_info): Use get_rid instead of equivalent inline code.
10687 (fstat): Don't ignore the high 32 bits of file's size.
10688
106892008-05-09 Chong Yidong <cyd@stupidchicken.com>
10690
10691 * image.c (png_load): Use correct bit-depth for setting background
10692 color.
10693
106942008-05-08 Eli Zaretskii <eliz@gnu.org>
10695
10696 * Makefile.in (lisp, shortlisp): Rename epa-file-hook.elc to
10697 epa-hook.elc.
10698
106992008-05-08 Juanma Barranquero <lekktu@gmail.com>
10700
10701 * font.c (Ffont_match_p): Don't use `iff' in docstring.
10702
107032008-05-07 Dan Nicolaescu <dann@ics.uci.edu>
10704
10705 * macfns.c (Fx_create_frame): Make a copy of frame parameters
10706 because the original parameters are in pure storage now.
10707 (mac_window): Remove unused params. Update callers.
10708
107092008-05-06 Stefan Monnier <monnier@iro.umontreal.ca>
10710
10711 * lread.c (substitute_object_recurse): Use lower-level primitives.
10712 Don't signal errors when traversing sub-char-tables.
10713 Don't loop over all the possible characters when traversing char-tables.
10714
10715 * print.c (print_preprocess): Add sub-char-tables to the print-table,
10716 just like we do in print.c.
10717
107182008-05-05 Stefan Monnier <monnier@iro.umontreal.ca>
10719
10720 * minibuf.c (Ftry_completion): Remove code left over from when we used
10721 scmp instead of Fcompare_strings.
10722
107232008-05-04 Juanma Barranquero <lekktu@gmail.com>
10724
10725 * w32fns.c (Fw32_battery_status): Fix computation of %t (h:min) format.
10726
107272008-05-04 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
10728
10729 * image.c [USE_MAC_IMAGE_IO] (image_load_image_io):
10730 Create bitmap context in native byte order.
10731
10732 * macterm.c (XDrawLine)
10733 (XCreatePixmapFromBitmapData) [USE_MAC_IMAGE_IO]: Create bitmap
10734 context in native byte order.
10735
107362008-05-04 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
10737
10738 * config.in: Regenerate.
10739
10740 * image.c (PIX_MASK_DRAW, PIX_MASK_RETAIN) [USE_MAC_IMAGE_IO]:
10741 New definitions for Image I/O support.
10742 (XGetImage, XPutPixel, XGetPixel, XDestroyImage)
10743 (mac_create_cg_image_from_image, x_create_x_image_and_pixmap)
10744 [USE_MAC_IMAGE_IO]: Add implementations for Image I/O support.
10745 (mac_data_provider_release_data, image_load_image_io)
10746 [USE_MAC_IMAGE_IO]: New functions.
10747 (CGImageCreateWithPNGDataProviderProcType) [MAC_OSX]: Remove typedef.
10748 (MyCGImageCreateWithPNGDataProvider) [MAC_OSX]: Remove variable.
10749 (init_image_func_pointer) [MAC_OSX]: Remove function.
10750 (image_load_quartz2d) [MAC_OSX]: Check availability of
10751 CGImageCreateWithPNGDataProvider at compile time.
10752 Use lowercase `false' for boolean constant.
10753 (png_load, jpeg_load, tiff_load, gif_load) [USE_MAC_IMAGE_IO]:
10754 Use image_load_image_io.
10755 (png_load) [!USE_MAC_IMAGE_IO && MAC_OSX]:
10756 Don't check MyCGImageCreateWithPNGDataProvider.
10757 (init_image) [MAC_OSX && TARGET_API_MAC_CARBON]:
10758 Don't call init_image_func_pointer.
10759
10760 * macgui.h (Pixmap) [USE_MAC_IMAGE_IO]: New definition for Image I/O.
10761
10762 * macterm.c (mac_cg_color_space_rgb) [USE_CG_DRAWING]:
10763 Make variable non-static.
10764 (XDrawLine, XCreatePixmap, XCreatePixmapFromBitmapData, XFreePixmap)
10765 [USE_MAC_IMAGE_IO]: Add implementations for Image I/O support.
10766
10767 * macterm.h (ARGB_TO_ULONG, ALPHA_FROM_ULONG): New macros.
10768 (RED_FROM_ULONG): Mask off higher bits.
10769 (mac_cg_color_space_rgb) [USE_MAC_IMAGE_IO]: New extern.
10770
10771 * s/darwin.h [HAVE_CARBON && HAVE_AVAILABILITYMACROS_H]:
10772 Include AvailabilityMacros.h.
10773 (USE_MAC_IMAGE_IO, LIBS_IMAGE) [HAVE_CARBON]: New defines.
10774 (LIBS_CARBON) [HAVE_CARBON]: Use LIBS_IMAGE.
10775
107762008-05-03 Stefan Monnier <monnier@iro.umontreal.ca>
10777
10778 * chartab.c (Fset_char_table_range): If range is t, really set all
10779 chars to that value.
10780
107812008-05-03 Eli Zaretskii <eliz@gnu.org>
10782
10783 * dired.c (Ffile_attributes): Don't allow the device number become
10784 negative.
10785
107862008-05-02 Daiki Ueno <ueno@unixuser.org>
10787
10788 * Makefile.in (lisp, shortlisp): Add epa-file-hook.elc.
10789
107902008-05-02 Juri Linkov <juri@jurta.org>
10791
10792 * minibuf.c (Fread_from_minibuffer, Fread_string, Fread_command)
10793 (Fread_variable, Fread_buffer, Fcompleting_read): Document the
10794 DEFAULT argument as a list of default values in docstrings.
10795
107962008-05-01 Chong Yidong <cyd@stupidchicken.com>
10797
10798 * puresize.h (BASE_PURESIZE): Increase to 1210000.
10799
108002008-05-01 Martin Rudalics <rudalics@gmx.at>
10801
10802 * dispnew.c (change_frame_size_1): Preserve small windows when
10803 shrinking frames by calling set_window_height|width with third
10804 arg 2.
10805
10806 * window.h (struct window): Replace field too_small_ok by field
10807 resize_proportionally.
10808
10809 * window.c (make_window): Initialize resize_proportionally.
10810 (enlarge_window): Temporarily set resize_proportionally to make
10811 sure that shrink_windows does scale the window proportionally.
10812 (shrink_windows): When window has resize_proportionally set try
10813 to shrink it proportionally by stealing from other windows.
10814 (struct saved_window, Fset_window_configuration)
10815 (compare_window_configurations): Handle resize_proportionally.
10816 (WINDOW_TOTAL_SIZE): New macro.
10817 (window_min_size, shrink_windows, size_window): Use it.
10818 (check_min_window_sizes): Remove. Invalid values of
10819 window-min-height|width are handled by window_min_size_2 now.
10820 (size_window, Fsplit_window, enlarge_window)
10821 (adjust_window_trailing_edge, grow_mini_window): Don't call
10822 check_min_window_sizes.
10823 (window_min_size_2, window_min_size_1, window_min_size):
10824 New argument safe_p for retrieving "safe" minimum sizes.
10825 (Fdisplay_buffer, Fsplit_window, enlarge_window)
10826 (adjust_window_trailing_edge, grow_mini_window):
10827 Adjust arguments of window_min_size... functions.
10828 (shrink_windows): Argument min_size removed. New argument
10829 safe_p allows shrinking windows to their safe minimum sizes.
10830 Calculate minimum size and decide whether a window shall be
10831 deleted for each window individually.
10832 (size_window): When nodelete_p equals 2, tell shrink_windows to
10833 delete windows only if their new minimum size is no more safe.
10834 (shrink_window_lowest_first): Call window_min_size_1 to make
10835 sure to preserve modeline of bottom-most window when resizing
10836 the minibuffer.
10837 (Fset_window_configuration, Fcurrent_window_configuration)
10838 (compare_window_configurations): Do not handle
10839 window-min-height|width any more.
10840 (syms_of_window): Clarify window-min-height|width doc-strings.
10841
108422008-04-30 Stefan Monnier <monnier@iro.umontreal.ca>
10843
10844 * dired.c (file_name_completion): Fix up the encoding/decoding issue
10845 some more. Copy some of the code from Ftry_completions.
10846 Remove special case code that dates back to initial revision when the
10847 slash was only added when necessary and that can't trigger nowadays.
10848
108492008-04-27 Kenichi Handa <handa@m17n.org>
10850
10851 * font.c (font_prop_validate): Signal `error' instead of `font'.
10852
108532008-04-29 Jason Rumney <jasonr@gnu.org>
10854
10855 * w32fns.c (Fw32_battery_status): New defun.
10856 (syms_of_w32fns): Defsubr it.
10857
108582008-04-28 Andreas Schwab <schwab@suse.de>
10859
10860 * dired.c (file_name_completion): Fix another mixing of encoded
10861 and decoded names.
10862
108632008-04-28 Juanma Barranquero <lekktu@gmail.com>
10864
10865 * w32fns.c (Fw32_define_rgb_color): Fix typo in docstring.
10866
108672008-04-27 Juanma Barranquero <lekktu@gmail.com>
10868
10869 * fringe.c (Fdefine_fringe_bitmap): Doc fix.
10870
108712008-04-27 Andreas Schwab <schwab@suse.de>
10872
10873 * dired.c (file_name_completion): Fix inappropriate mixing of
10874 encoded and decoded names.
10875
10876 * xterm.c (XTread_socket): Fix use of uninitialized variable.
10877
10878 * puresize.h (BASE_PURESIZE): Increase to 1200000.
10879
108802008-04-26 Eli Zaretskii <eliz@gnu.org>
10881
10882 * dired.c (Ffile_attributes) [WINDOWSNT]: Undo change from
10883 2008-03-31, it's not needed anymore with `struct stat' definition
10884 on nt/inc/sys/stat.h. Undo changes from 2007-01-12 and 2007-01-13
10885 for the same reasons.
10886
108872008-04-25 Dennis Gilmore <ausil@fedoraproject.org> (tiny change)
10888
10889 * m/sparc.h: Additional redefinitions for GNU/Linux.
10890
108912008-04-23 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
10892
10893 * macterm.c (Vmac_ts_active_input_buf) [USE_MAC_TSM]: New variable.
10894 (syms_of_macterm) [USE_MAC_TSM]: Defvar it.
10895 (Qmouse_drag_overlay) [MAC_OSX]: New variable.
10896 (syms_of_macterm) [MAC_OSX]: Intern and staticpro it.
10897 (mac_get_selected_range, mac_store_buffer_text_to_unicode_chars)
10898 (mac_ax_selected_text_range) [MAC_OSX]: New functions.
10899 (mac_ax_number_of_characters) [MAC_OS_X_VERSION_MAX_ALLOWED >= 1030]:
10900 Likewise.
10901
10902 * mactoolbox.c (Vmac_ts_active_input_buf) [USE_MAC_TSM]: Add extern.
10903 (fast_find_position, x_y_to_hpos_vpos, mac_ax_selected_text_range)
10904 (mac_ax_number_of_characters): Add externs.
10905 (mac_get_selected_range, mac_store_buffer_text_to_unicode_chars)
10906 [USE_MAC_TSM]: Likewise.
10907 (mac_handle_text_input_event) [MAC_OSX]:
10908 Handle kEventTextInputOffsetToPos for no active input area case.
10909 Handle kEventTextInputPosToOffset and kEventTextInputGetSelectedText.
10910 (mac_handle_document_access_event)
10911 [MAC_OS_X_VERSION_MAX_ALLOWED >= 1030]: New function.
10912 (install_application_handler) [MAC_OSX]: Register handlers for
10913 kEventTextInputPosToOffset and kEventTextInputGetSelectedText.
10914 (install_application_handler) [MAC_OS_X_VERSION_MAX_ALLOWED >= 1030]:
10915 Register mac_handle_document_access_event.
10916
10917 * xdisp.c (x_y_to_hpos_vpos, fast_find_position) [HAVE_CARBON]:
10918 Make functions non-static.
10919
109202008-04-23 Stefan Monnier <monnier@iro.umontreal.ca>
10921
10922 * fileio.c (Vread_file_name_function, Vread_file_name_predicate)
10923 (read_file_name_completion_ignore_case, insert_default_directory)
10924 (Qdefault_directory): Move to minibuffer.el.
10925 (Fread_file_name): Call the new `read-file-name' instead.
10926
109272008-04-23 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
10928
10929 * mac.c (create_apple_event) [TARGET_API_MAC_CARBON]:
10930 Make function non-static.
10931 (create_apple_event_from_event_ref) [TARGET_API_MAC_CARBON]:
10932 Remove function.
10933 (create_apple_event_from_drag_ref) [TARGET_API_MAC_CARBON]:
10934 Move to mactoolbox.c.
10935 (mac_event_parameters_to_lisp) [TARGET_API_MAC_CARBON]: New function.
10936
10937 * macgui.h (CGFloat) [!CGFLOAT_DEFINED]: New typedef.
10938 (mac_rect_make): New macro.
10939
10940 * macterm.c (mac_draw_image_string_atsui) [MAC_OSX]: Use CGFloat
10941 instead of float.
10942 (mac_draw_image_string_cg) [USE_CG_TEXT_DRAWING]: Likewise.
10943 (init_cg_color, mac_draw_line, mac_draw_cg_image, XSetForeground)
10944 (XSetBackground) [USE_CG_DRAWING]: Likewise.
10945 (mac_draw_image_string_atsui) [MAC_OSX]: Use mac_rect_make instead of
10946 CGRectMake.
10947 (mac_draw_image_string_cg) [USE_CG_TEXT_DRAWING]: Likewise.
10948 (mac_erase_rectangle, mac_draw_cg_image, mac_fill_rectangle)
10949 (mac_set_clip_rectangles) [USE_CG_DRAWING]: Likewise.
10950 (XCreatePixmap, XCreatePixmapFromBitmapData): Use Window
10951 instead of WindowRef in argument type.
10952 (XCreatePixmap) [!MAC_OS8]: Don't call SetPortWindowPort.
10953 (mac_invert_rectangle): Use CGContextSetBlendMode if available.
10954 (mac_set_clip_rectangles, mac_reset_clip_rectangles): Take argument F
10955 instead of DISPLAY. All uses changed.
10956 (mac_handle_size_change): Don't call SET_FRAME_GARBAGED.
10957 (x_calc_absolute_position): Simplify so as not to use
10958 FRAME_PIXEL_WIDTH/FRAME_PIXEL_HEIGHT.
10959
10960 * macterm.h (XCreatePixmap, XCreatePixmapFromBitmapData): Use Window
10961 instead of WindowRef in argument type.
10962 (create_apple_event_from_event_ref, create_apple_event_from_drag_ref)
10963 [TARGET_API_MAC_CARBON]: Remove externs.
10964 (create_apple_event, mac_event_parameters_to_lisp)
10965 [TARGET_API_MAC_CARBON]: Add externs.
10966
10967 * mactoolbox.c (Vmac_ts_script_language_on_focus)
10968 (saved_ts_script_language_on_focus) [USE_MAC_TSM]: Remove externs.
10969 (XTread_socket) [USE_MAC_TOOLBAR]: Select window if its structure part
10970 is clicked.
10971 (x_activate_menubar): Remove extern for saved_menu_event_location.
10972 (create_apple_event_from_drag_ref) [TARGET_API_MAC_CARBON]:
10973 Move from mac.c.
10974
109752008-04-23 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
10976
10977 * alloc.c [!SYSTEM_MALLOC && !SYNC_INPUT] (uninterrupt_malloc)
10978 [HAVE_GTK_AND_PTHREAD && !DOUG_LEA_MALLOC]: Don't use recursive mutex.
10979
109802008-04-23 Jason Rumney <jasonr@gnu.org>
10981
10982 * w32.c (stat): When Vw32_get_true_file_attributes is Qlocal, get
10983 attributes only for local files.
10984
10985 * w32proc.c (syms_of_ntproc): Change Vw32_get_true_file attributes
10986 default to Qlocal.
10987
109882008-04-22 Juri Linkov <juri@jurta.org>
10989
10990 * buffer.c (Fswitch_to_buffer): Change interactive spec to call
10991 read-buffer-to-switch instead of using the letter "B".
10992
109932008-04-21 Stefan Monnier <monnier@iro.umontreal.ca>
10994
10995 * fileio.c (Qdefault_directory): New variable.
10996 (Fread_file_name): Use it to pass `dir' to the completion functions.
10997
109982008-04-20 Chong Yidong <cyd@stupidchicken.com>
10999
11000 * xdisp.c (pos_visible_p): Check if iterator stops on a display string.
11001
110022008-04-19 Stefan Monnier <monnier@iro.umontreal.ca>
11003
11004 * keyboard.c (Vpre_help_message): Remove.
11005 (show_help_echo): Remove default C code.
11006
11007 * dired.c (directory_files_internal, file_name_completion):
11008 Only call ENCODE_FILE if the string is indeed decoded.
11009
110102008-04-18 Stefan Monnier <monnier@iro.umontreal.ca>
11011
11012 * Makefile.in (TOOLKIT_DEFINES): Remove.
11013 (LIBW): Use a bit less #if, remove left over OPEN_LOOK stuff.
11014
110152008-04-18 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
11016
11017 * Makefile.in (MAC_OBJ): Add mactoolbox.o.
11018 (mactoolbox.o): New target.
11019
11020 * mac.c [MAC_OSX] (select_and_poll_event, sys_select):
11021 Use mac_run_loop_run_once instead of CFRunLoopRunInMode.
11022
11023 * macfns.c (x_set_background_color, mac_window, x_create_tip_frame):
11024 Use mac_set_frame_window_background instead of XSetWindowBackground.
11025 (x_set_tool_bar_lines) [USE_MAC_TOOLBAR]:
11026 Use mac_is_window_toolbar_visible instead of IsWindowToolbarVisible.
11027 (x_set_name_internal) [TARGET_API_MAC_CARBON]: Use mac_set_window_title
11028 instead of SetWindowTitleWithCFString.
11029 (mac_update_proxy_icon) [TARGET_API_MAC_CARBON]: Remove BLOCK_INPUT.
11030 Move function to mactoolbox.c.
11031 (mac_update_title_bar) [TARGET_API_MAC_CARBON]:
11032 Use mac_set_window_modified instead of SetWindowModified.
11033 Add BLOCK_INPUT around mac_set_window_modified/mac_update_proxy_icon.
11034 (mac_window, x_create_tip_frame): Use mac_create_frame_window.
11035 (Fx_focus_frame): Use mac_front_non_floating_window instead of
11036 FrontNonFloatingWindow. Use mac_activate_window instead of
11037 ActivateWindow. Use mac_active_non_floating_window instead of
11038 ActiveNonFloatingWindow.
11039 (show_hourglass, hide_hourglass) [TARGET_API_MAC_CARBON]:
11040 Use mac_show_hourglass and mac_hide_hourglass.
11041 (compute_tip_xy) [TARGET_API_MAC_CARBON]: Use mac_get_global_mouse
11042 instead of GetGlobalMouse.
11043 (Fx_show_tip): Use mac_move_window/mac_size_window/mac_show_window
11044 instead of MoveWindow/SizeWindow/ShowWindow, respectively.
11045 Use mac_bring_window_to_front instead of BringToFront.
11046 (Qfile_name_history) [TARGET_API_MAC_CARBON]: Move extern to
11047 mactoolbox.c.
11048 (Fx_file_dialog) [TARGET_API_MAC_CARBON]: Move function body to
11049 mac_file_dialog in mactoolbox.c. Use mac_file_dialog.
11050 (mac_nav_event_callback) [TARGET_API_MAC_CARBON]: Move function to
11051 mactoolbox.c.
11052
11053 * macgui.h [!HAVE_CARBON]: Include Quickdraw.h instead of QuickDraw.h.
11054 (XtPointer): Move typedef from macmenu.c.
11055 (enum button_type): Move enum from macmenu.c.
11056 (widget_value): Move typedef from macmenu.c.
11057 (M_APPLE, I_ABOUT, EXTRA_STACK_ALLOC, ARGV_STRING_LIST_ID)
11058 (DIALOG_LEFT_MARGIN, DIALOG_TOP_MARGIN, DIALOG_RIGHT_MARGIN)
11059 (DIALOG_BOTTOM_MARGIN, DIALOG_MIN_INNER_WIDTH, DIALOG_MAX_INNER_WIDTH)
11060 (DIALOG_BUTTON_BUTTON_HORIZONTAL_SPACE)
11061 (DIALOG_BUTTON_BUTTON_VERTICAL_SPACE, DIALOG_BUTTON_MIN_WIDTH)
11062 (DIALOG_TEXT_MIN_HEIGHT, DIALOG_TEXT_BUTTONS_VERTICAL_SPACE)
11063 (DIALOG_ICON_WIDTH, DIALOG_ICON_HEIGHT, DIALOG_ICON_LEFT_MARGIN)
11064 (DIALOG_ICON_TOP_MARGIN): Move defines from macmenu.c.
11065 (Selection): Move typedef from macselect.c.
11066 (RAM_TOO_LARGE_ALERT_ID, ABOUT_ALERT_ID) [MAC_OS8]: Move defines from
11067 macterm.c.
11068 (mac_set_window_title, mac_set_window_modified, mac_is_window_visible)
11069 (mac_is_window_collapsed, mac_bring_window_to_front)
11070 (mac_send_window_behind, mac_hide_window, mac_show_window)
11071 (mac_collapse_window, mac_front_non_floating_window)
11072 (mac_active_non_floating_window, mac_activate_window)
11073 (mac_move_window_structure, mac_move_window, mac_size_window)
11074 (mac_get_global_mouse, mac_is_window_toolbar_visible): New defines.
11075
11076 * macmenu.c [!TARGET_API_MAC_CARBON]: Move includes to mactoolbox.c.
11077 (enum mac_menu_kind): Move enum to mactoolbox.c.
11078 (min_menu_id): Move variable to mactoolbox.c.
11079 (quit_dialog_event_loop) [TARGET_API_MAC_CARBON]: Likewise.
11080 (DIALOG_WINDOW_RESOURCE): Move define to mactoolbox.c.
11081 (DIALOG_BUTTON_COMMAND_ID_OFFSET, DIALOG_BUTTON_COMMAND_ID_P)
11082 (DIALOG_BUTTON_COMMAND_ID_VALUE, DIALOG_BUTTON_MAKE_COMMAND_ID)
11083 [TARGET_API_MAC_CARBON]: Likewise.
11084 (XtPointer): Move typedef to macgui.h.
11085 (enum button_type): Move enum to macgui.h.
11086 (widget_value): Move typedef to macgui.h.
11087 (DIALOG_LEFT_MARGIN, DIALOG_TOP_MARGIN, DIALOG_RIGHT_MARGIN)
11088 (DIALOG_BOTTOM_MARGIN, DIALOG_MIN_INNER_WIDTH, DIALOG_MAX_INNER_WIDTH)
11089 (DIALOG_BUTTON_BUTTON_HORIZONTAL_SPACE)
11090 (DIALOG_BUTTON_BUTTON_VERTICAL_SPACE, DIALOG_BUTTON_MIN_WIDTH)
11091 (DIALOG_TEXT_MIN_HEIGHT, DIALOG_TEXT_BUTTONS_VERTICAL_SPACE)
11092 (DIALOG_ICON_WIDTH, DIALOG_ICON_HEIGHT, DIALOG_ICON_LEFT_MARGIN)
11093 (DIALOG_ICON_TOP_MARGIN): Move defines to macgui.h.
11094 (popup_activated_flag): Make variable non-static.
11095 (x_activate_menubar, install_menu_quit_handler, pop_down_menu)
11096 (add_menu_item, fill_menu, dispose_menus):
11097 Move functions to mactoolbox.c.
11098 (restore_show_help_function, menu_target_item_handler)
11099 (install_menu_target_item_handler, mac_handle_dialog_event)
11100 (install_dialog_event_handler, pop_down_dialog, create_and_show_dialog)
11101 [TARGET_API_MAC_CARBON]: Likewise.
11102 (menu_quit_handler) [MAC_OS_X_VERSION_MAX_ALLOWED >= 1030]: Likewise.
11103 (mac_dialog) [!TARGET_API_MAC_CARBON]: Likewise.
11104 (find_and_call_menu_selection, name_is_separator): Make function
11105 non-static.
11106 (Vshow_help_function, timer_check) [TARGET_API_MAC_CARBON]: Move extern
11107 to mactoolbox.c.
11108 (set_frame_menubar): Don't call install_menu_quit_handler.
11109 (menu_item_selection): New variable.
11110 (mac_menu_show): Use create_and_show_popup_menu.
11111 (create_and_show_dialog) [TARGET_API_MAC_CARBON]: Don't return
11112 selection but set variable menu_item_selection. All uses changed.
11113 (mac_fill_menubar): Rename from fill_menubar. All uses changed.
11114 Call install_menu_quit_handler. Move to mactoolbox.c.
11115
11116 * macselect.c [!TARGET_API_MAC_CARBON]: Don't include Scrap.h.
11117 (Selection): Move typedef to macgui.h.
11118 (Vselection_converter_alist, Qmac_scrap_name, Qmac_ostype)
11119 (Vmac_apple_event_map, Qmac_apple_event_class, Qmac_apple_event_id):
11120 Make variables non-static.
11121 (Vmac_dnd_known_types) [TARGET_API_MAC_CARBON]: Likewise.
11122 (mac_handle_apple_event, cleanup_all_suspended_apple_events):
11123 Make functions non-static.
11124 (Vmac_service_selection) [MAC_OSX]: Likewise.
11125 (mac_get_selection_from_symbol, get_flavor_type_from_symbol)
11126 (mac_valid_selection_target_p, mac_clear_selection)
11127 (mac_get_selection_ownership_info, mac_valid_selection_value_p)
11128 (mac_put_selection_value, mac_selection_has_target_p)
11129 (mac_get_selection_value, mac_get_selection_target_list)
11130 (init_apple_event_handler, install_drag_handler, remove_drag_handler):
11131 Move functions to mactoolbox.c.
11132 (mac_do_track_drag, mac_do_receive_drag) [TARGET_API_MAC_CARBON]:
11133 Likewise.
11134 (copy_scrap_flavor_data, mac_handle_service_event)
11135 (install_service_handler) [MAC_OSX]: Likewise.
11136 (syms_of_macselect) <Vmac_dnd_known_types>:
11137 Use mac_dnd_default_known_types.
11138
11139 * macterm.h (FRAME_OUTER_TO_INNER_DIFF_X, FRAME_OUTER_TO_INNER_DIFF_Y):
11140 Move to mactoolbox.c.
11141 (HOURGLASS_WIDTH, HOURGLASS_HEIGHT): Change to 15.
11142 (Fx_selection_owner_p): Add EXFUN.
11143 (install_window_handler, remove_window_handler, XSetWindowBackground):
11144 Remove externs.
11145 (do_apple_menu) [!TARGET_API_MAC_CARBON]: Likewise.
11146 (mac_prepare_for_quickdraw) [USE_CG_DRAWING]: Likewise.
11147 (x_raise_frame, x_lower_frame, mac_alert_sound_play)
11148 (install_application_handler, mac_get_frame_bounds, mac_get_frame_mouse)
11149 (mac_convert_frame_point_to_global, mac_set_frame_window_background)
11150 (mac_update_begin mac_update_end, mac_frame_up_to_date, x_flush)
11151 (mac_create_frame_window, mac_dispose_frame_window, mac_begin_clip)
11152 (mac_end_clip, mac_create_scroll_bar, mac_dispose_scroll_bar)
11153 (mac_set_scroll_bar_bounds, mac_redraw_scroll_bar, mac_fill_menubar)
11154 (create_and_show_popup_menu, mac_get_selection_from_symbol)
11155 (mac_valid_selection_target_p, mac_clear_selection)
11156 (mac_get_selection_ownership_info, mac_valid_selection_value_p)
11157 (mac_put_selection_value, mac_selection_has_target_p)
11158 (mac_get_selection_value, mac_get_selection_target_list): Add externs.
11159 (mac_update_proxy_icon, mac_show_hourglass, mac_hide_hourglass)
11160 (mac_reposition_hourglass, mac_file_dialog, create_and_show_dialog)
11161 (mac_dnd_default_known_types) [TARGET_API_MAC_CARBON]: Likewise.
11162 (mac_run_loop_run_once) [MAC_OSX]: Likewise.
11163 (mac_dialog) [!TARGET_API_MAC_CARBON]: Likewise.
11164 (mac_begin_cg_clip, mac_end_cg_clip) [USE_CG_DRAWING]: Likewise.
11165 (x_set_toolkit_scroll_bar_thumb) [!USE_TOOLKIT_SCROLL_BARS]: Likewise.
11166 (x_scroll_bar_set_handle) [!USE_TOOLKIT_SCROLL_BARS]: Likewise.
11167
11168 * mactoolbox.c: New file.
11169
111702008-04-18 Jason Rumney <jasonr@gnu.org>
11171
11172 * dired.c (Ffile_attributes) [WINDOWSNT]: Cast uid and gid to unsigned.
11173
111742008-04-18 Stefan Monnier <monnier@iro.umontreal.ca>
11175
11176 * character.c (Fmultibyte_char_to_unibyte):
11177 Return latin1 chars unchanged.
11178
11179 * fileio.c (Fexpand_file_name): Refine last fix so `nm' is only
11180 relocated if it points to `name'.
11181
111822008-04-17 Kenichi Handa <handa@m17n.org>
11183
11184 * data.c (Faset): Allow setting a multibyte character in an
11185 ASCII-only unibyte string.
11186
11187 * lisp.h (STRING_SET_MULTIBYTE): New macro.
11188
111892008-04-16 Stefan Monnier <monnier@iro.umontreal.ca>
11190
11191 * Makefile.in: Don't use HAVE_GTK and don't -DUSE_GTK since it's now
11192 done in config.h.
11193
111942008-04-16 Juanma Barranquero <lekktu@gmail.com>
11195
11196 * character.c (Fchar_bytes, Fchar_width, Fstring_width)
11197 (Fchar_direction): Add usage in the docstring.
11198
111992008-04-15 Chong Yidong <cyd@stupidchicken.com>
11200
11201 * keyboard.c (read_key_sequence): Remove always-true checks.
11202
112032008-04-14 Jason Rumney <jasonr@gnu.org>
11204
11205 * w32font.c (w32font_open_internal): Set max_bounds.descent in
11206 compatibility struct, for better underline positioning.
11207
112082008-04-13 David Hansen <david.hansen@gmx.net>
11209
11210 * dbusbind.c (dbus-get-unique-name): Remove extra copying of name
11211 string.
11212
112132008-04-12 Dan Nicolaescu <dann@ics.uci.edu>
11214
11215 * m/hp800.h (XUINT, XSET): Remove.
11216
112172008-04-12 Juanma Barranquero <lekktu@gmail.com>
11218
11219 * fileio.c (Fexpand_file_name): Add declaration for `p' missing in
11220 previous change.
11221
112222008-04-12 Stefan Monnier <monnier@iro.umontreal.ca>
11223
11224 * fileio.c (Fexpand_file_name): Tighten the scope of `p' and `o' vars.
11225 Relocate `nm' after calling DECODE_FILE, in case the GC was run.
11226
112272008-04-11 Stefan Monnier <monnier@iro.umontreal.ca>
11228
11229 * keymap.h (map_keymap_canonical): Declare.
11230 * xmenu.c (single_keymap_panes): Use it.
11231
112322008-04-11 Glenn Morris <rgm@gnu.org>
11233
11234 * eval.c (Fdefvaralias): If the alias is bound and the target is not,
11235 set the target's value to that of the alias.
11236
112372008-04-11 Stefan Monnier <monnier@iro.umontreal.ca>
11238
11239 * term.c (set_tty_color_mode): Left over typo.
11240
112412008-04-10 Michael Albinus <michael.albinus@gmx.de>
11242
11243 * fileio.c (Fmake_symbolic_link): Surround code by #ifdef S_IFLNK
11244 only after check for file name handler functions. Signal, when
11245 native functionality is not supported.
11246 (syms_of_fileio): Declare it unconditionally.
11247
112482008-04-10 Jason Rumney <jasonr@gnu.org>
11249
11250 * w32menu.c (is_simple_dialog, simple_dialog_show): New functions.
11251 (Fx_popup_dialog): Handle simple yes/no questions as dialogs.
11252
11253 * w32.c (logon_network_drive): Also logon to remote drives that
11254 are mapped to drive letters.
11255
112562008-04-10 Glenn Morris <rgm@gnu.org>
11257
11258 * xdisp.c (truncate-partial-width-windows): Doc fix.
11259
112602008-04-10 Stefan Monnier <monnier@iro.umontreal.ca>
11261
11262 * fileio.c (read_file_name_cleanup, Fread_file_name_internal):
11263 Move functions to minibuffer.el.
11264 (syms_of_fileio): Don't declare them.
11265
112662008-04-09 Stefan Monnier <monnier@iro.umontreal.ca>
11267
11268 * minibuf.c (Vcompletion_auto_help): Move to minibuffer.el.
11269 (syms_of_minibuf): Remove its initialization.
11270
11271 * minibuf.c (temp_echo_area_glyphs): Remove unused function.
11272
112732008-04-09 Juanma Barranquero <lekktu@gmail.com>
11274
11275 * editfns.c (Ffield_string_no_properties): Fix typo in docstring.
11276
112772008-04-09 Jason Rumney <jasonr@gnu.org>
11278
11279 * makefile.w32-in (distclean): Delete makefile too.
11280 (maintainer-clean): New target.
11281
11282 * xdisp.c (redisplay_internal) [!WINDOWSNT]: Conditionalize last change.
11283
11284 * w32term.c (w32_compute_glyph_string_overhangs): Compute overhangs
11285 for new font backend and composite cases.
11286
112872008-04-09 Jan Djärv <jan.h.d@swipnet.se>
11288
11289 * atimer.c (alarm_signal_handler): Call run_timers if not SYNC_INPUT.
11290 Most of the code moved to run_timers.
11291 (do_pending_atimers): Call run_timers.
11292 (run_timers): New function.
11293
11294 * sysdep.c (emacs_write): If SYNC_INPUT and pending_atimers,
11295 run atimers.
11296
11297 * process.c (wait_reading_process_output): The same as above.
11298
112992008-04-09 Stefan Monnier <monnier@iro.umontreal.ca>
11300
11301 * minibuf.c (last_exact_completion): Remove variable.
11302 (Fdelete_minibuffer_contents, do_completion, Fminibuffer_complete)
11303 (complete_and_exit_1, complete_and_exit_2)
11304 (Fminibuffer_complete_and_exit, Fminibuffer_complete_word)
11305 (Fdisplay_completion_list, display_completion_list_1)
11306 (Fminibuffer_completion_help, Fself_insert_and_exit)
11307 (Fexit_minibuffer, Fminibuffer_message): Move functions to
11308 minibuffer.el.
11309 (syms_of_minibuf): Remove corresponding initializations.
11310
11311 * keyboard.c (Qdeactivate_mark): New var.
11312 (command_loop_1): Use it to call `deactivate-mark'.
11313 (syms_of_keyboard): Initialize it.
11314
11315 * xdisp.c (redisplay_internal): Reset tty's color_mode when switching
11316 to another frame.
11317 * frame.c (do_switch_frame): Refine the top_frame/async_visible code.
11318 Don't call set_tty_color_mode.
11319 (store_frame_param): Reset previous_frame rather than call
11320 set_tty_color_mode.
11321 * term.c (set_tty_color_mode): Rewrite.
11322 * dispextern.h (set_tty_color_mode): New type.
11323 * termchar.h (struct tty_display_info): Add `previous_color_mode'.
11324
113252008-04-08 Stefan Monnier <monnier@iro.umontreal.ca>
11326
11327 * keymap.c (access_keymap): Remove the value 2 for t_ok which was used
11328 for generic chars, which do not exist any more in emacs-unicode.
11329
113302008-04-08 Michael Albinus <michael.albinus@gmx.de>
11331
11332 * coding.c (detect_coding_emacs_mule)
11333 (Ffind_operation_coding_system): Fix typo.
11334
113352008-04-08 Jason Rumney <jasonr@gnu.org>
11336
11337 * w32uniscribe.c (SNAME): Extract only symbol name.
11338
11339 * w32font.h (struct w32_metric_cache): New struct.
11340 (w32font_info): Use it.
11341 (W32METRIC_NO_ATTEMPT, W32METRIC_SUCCESS, W32METRIC_FAIL)
11342 (CACHE_BLOCKSIZE): New constants.
11343
11344 * w32font.c (Qja, Qko, Qzh): New symbols.
11345 (syms_of_w32font): Initialise them.
11346 (font_matches_spec): Use them to filter by language.
11347 (recompute_cached_metrics): Remove function.
11348 (compute_metrics, clear_cached_metrics): New functions.
11349 (w32font_encode_char): Use them to manage metric cache.
11350 (w32font_text_extents): Cache metrics for all glyphs on demand.
11351 Delay converting glyph indices to WORD until needed.
11352 (w32font_open_internal): Initialize metric cache to empty.
11353 (registry_to_w32_charset): Charset should always be a symbol.
11354 (fill_in_logfont, list_all_matching_fonts): Family should
11355 always be a symbol.
11356
113572008-04-06 Jason Rumney <jasonr@gnu.org>
11358
11359 * w32uniscribe.c (uniscribe_shape): Increase items buffer size.
11360 Give up if glyph indices not supported. Use uniscribe obtained
11361 ABC widths for individual metrics. Map glyph clusters back to
11362 characters using fClusterStart flag. Return number of glyphs
11363 produced, not chars processed.
11364 (uniscribe_shape): Map char at FROM to current glyph.
11365
113662008-04-05 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
11367
11368 * macmenu.c (fill_menu) [TARGET_API_MAC_CARBON]:
11369 Use SetMenuItemHierarchicalMenu.
11370
113712008-04-05 Jason Rumney <jasonr@gnu.org>
11372
11373 * image.c (pbm_load): Allow color values up to 65535.
11374 Throw an error if max_color_idx is outside the supported range.
11375 Report an error when image size is invalid.
11376 Read two bytes at a time when raw images have max_color_idx above 255.
11377
113782008-04-05 Eli Zaretskii <eliz@gnu.org>
11379
11380 * w32.c (readdir): If FindFirstFile/FindNextFile return in
11381 cFileName a file name that includes `?' characters, use the 8+3
11382 alias in cAlternateFileName instead.
11383
113842008-04-05 Kenichi Handa <handa@ni.aist.go.jp>
11385
11386 * ccl.c (ccl_driver): If ccl->quit_silently is nonzero, don't
11387 append "CCL: Quitted" when the CCL program is quitted.
11388 (setup_ccl_program): Initialize ccl->quit_silently to zero.
11389
11390 * ccl.h (struct ccl_program): New member quit_silently.
11391
113922008-04-05 Chong Yidong <cyd@stupidchicken.com>
11393
11394 * search.c (compile_pattern_1): Treat non-nil and non-string of
11395 search-spaces-regexp as nil.
11396
11397 * minibuf.c (Fassoc_string): Tweak docstring.
11398
113992008-04-05 Eli Zaretskii <eliz@gnu.org>
11400
11401 * dired.c (Ffile_attributes): Support inode numbers wider than 32
11402 bits. Remove ugly WINDOWSNT-specific kludge introduced on
11403 2008-03-14 to force inode be positive.
11404
11405 * w32.c (sys_chown, stat, fstat): Use S_* constants instead of
11406 _S_* ones, since we now use our own sys/stat.h.
11407 (stat, fstat): Don't mangle the inode number.
11408 (init_user_info): Don't restrict UID and GID to 0-60000 range.
11409
114102008-04-04 Stefan Monnier <monnier@iro.umontreal.ca>
11411
11412 * frame.h (struct frame): Give one more bit to `visible' since we use
11413 values larger than 1 to indicate obscured frames on ttys.
11414
11415 * keymap.c (Qkeymap_canonicalize): New var.
11416 (Fmap_keymap_internal): New fun.
11417 (describe_map): Use keymap-canonicalize.
11418
11419 * undo.c (last_boundary_buffer, last_boundary_position): New vars.
11420 (Fundo_boundary): Set them.
11421 (syms_of_undo): Initialize them.
11422 (record_point): Use them instead of last_point_position*.
11423 (last_undo_buffer): Change type.
11424
114252008-04-04 Jason Rumney <jasonr@gnu.org>
11426
11427 * w32font.c (w32font_text_extents): Use font's ascent and descent.
11428 (recompute_cached_metrics): Don't set ascent and descent per char.
11429
11430 * w32uniscribe.c (uniscribe_check_otf): Fix last change.
11431 (uniscribe_check_otf): Add GC protection before consing.
11432 Rearrange loop for counting features.
11433
114342008-04-03 Stefan Monnier <monnier@iro.umontreal.ca>
11435
11436 * insdel.c (insert_from_buffer_1): Don't compare bytes in destination
11437 buffer with byte-size of source buffer.
11438
114392008-04-03 Chong Yidong <cyd@stupidchicken.com>
11440
11441 * callint.c (Fcall_interactively): Handle temporary region even
11442 when shift-select-mode is off.
11443
114442008-04-03 Jason Rumney <jasonr@gnu.org>
11445
11446 * w32uniscribe.c (uniscribe_check_otf): Sanity check otf_spec.
11447
114482008-04-03 Kenichi Handa <handa@m17n.org>
11449
11450 * coding.c (CATEGORY_MASK_ANY): Add CATEGORY_MASK_UTF_16_AUTO.
11451 (CATEGORY_MASK_UTF_16): Likewise.
11452 (detect_coding_utf_16): Add heuristics to reject utf-16 for a
11453 binary file.
11454 (detect_coding): Add null-byte detection for a binary file.
11455 (detect_coding_system): Likewise.
11456
114572008-04-03 Jason Rumney <jasonr@gnu.org>
11458
11459 * w32uniscribe.c: New file.
11460
11461 * font.h (uniscribe_font_driver) [WINDOWSNT]: Declare for w32fns.c.
11462
11463 * w32font.h (uniscribe_check_otf): Declare for w32font.c.
11464
11465 * w32font.c (Qbalinese, Qbuginese, Qbuhid, Qcuneiform, Qcypriot)
11466 (Qdeseret, Qglagolitic, Qgothic, Qhanunoo, Qkharoshthi)
11467 (Qlimbu, Qlinear_b, Qold_italic, Qold_persian, Qosmanya)
11468 (Qphags_pa, Qphoenician, Qshavian, Qsyloti_nagri)
11469 (Qtagalog, Qtagbanwa, Qtai_le, Qtifinagh, Qugaritic)
11470 (Qphonetic): New symbols.
11471 (syms_of_w32font): Initialize them.
11472 (font_supported_scripts): Use them.
11473 (w32font_list_family): List all charsets.
11474 (w32font_text_extents, recompute_cached_metrics): Fix metric
11475 calculations.
11476 (w32_enumfont_pattern_entity): Make full_type a DWORD.
11477 Give opentype fonts their own format.
11478 (font_matches_spec): New arguments backend and logfont.
11479 Handle :otf spec for uniscribe backend.
11480 (add_font_entity_to_list): Match truetype fonts in uniscribe backend.
11481 (fill_in_logfont): Use DEFAULT_CHARSET when charset not supplied.
11482
11483 * w32fns.c (Fx_create_frame): Conditionally register uniscribe
11484 font backend.
11485 (globals_of_w32fns): Initialize uniscribe font backend.
11486
11487 * makefile.w32-in (CONFIG_H): New variable. Use it to clean up
11488 dependencies.
11489 (w32uniscribe.$(O)): New file to build.
11490 (FONT_OBJ): Include w32uniscribe.$(O).
11491 (LIBS): Add uniscribe libraries.
11492
11493 * ftfont.c (ftfont_get_open_type_spec): Check spec->script, not val.
11494
114952008-04-02 Chong Yidong <cyd@stupidchicken.com>
11496
11497 * callint.c (Vshift_select_mode): New var.
11498 (Finteractive): Document new ^ spec.
11499 (Fcall_interactively): Call handle-shift-selection if the ^ spec
11500 is present.
11501
11502 * keyboard.c (Vthis_command_keys_shift_translated): New var.
11503 (command_loop_1): Avoid running the direct display versions of
11504 forward-char and backward-char if shift-selection may occur.
11505 (read_key_sequence): Set Vthis_command_keys_shift_translated if
11506 shift-translation takes place.
11507
11508 * buffer.c (Vtransient_mark_mode): Move docstring to simple.el to
11509 avoid clobbering by define-minor-mode.
11510
11511 * cmds.c (Fforward_char, Fbackward_char, Fforward_line)
11512 (Fbeginning_of_line, Fend_of_line): Add ^ interactive spec.
11513
11514 * syntax.c (Fforward_word): Add ^ interactive spec.
11515
11516 * window.c (Fscroll_up, Fscroll_down, Fscroll_left)
11517 (Fscroll_right): Add ^ interactive spec.
11518
115192008-04-01 Stefan Monnier <monnier@iro.umontreal.ca>
11520
11521 * xdisp.c (try_window_id): Don't forget to reset delta_bytes.
11522
11523 * casefiddle.c (casify_object): Fix up int/EMACS_INT mixup.
11524
11525 * charset.c (Funibyte_charset, Fset_unibyte_charset): Remove.
11526
115272008-03-31 Juri Linkov <juri@jurta.org>
11528
11529 * window.c (Fdisplay_buffer): Reinitialize `tem' to nil.
11530
115312008-03-30 Jan Djärv <jan.h.d@swipnet.se>
11532
11533 * gtkutil.c (xg_set_geometry): Fix indentation.
11534 (xg_resize_outer_widget): Remove.
11535 (x_wm_size_hint_off): Fix indentation.
11536 (xg_frame_set_char_size): Call flush_and_sync after
11537 gtk_window_resize.
11538 (x_wm_set_size_hint): Pass NULL as geometry window to
11539 gtk_window_set_geometry_hints due to Gtk+ bug nr 68668.
11540 Add menu bar and tool bar height to base height.
11541 (xg_update_frame_menubar, free_frame_menubar)
11542 (xg_tool_bar_detach_callback, xg_tool_bar_attach_callback)
11543 (update_frame_tool_bar, free_frame_tool_bar):
11544 Change xg_resize_outer_widget to xg_frame_set_char_size.
11545
115462008-03-30 Michael Albinus <michael.albinus@gmx.de>
11547
11548 * dbusbind.c (QCdbus_timeout): New D-Bus internal symbol.
11549 (Fdbus_call_method): New parameter TIMEOUT.
11550 (dbus-send-signal): Optimize UNGCPRO call.
11551
115522008-03-29 Juri Linkov <juri@jurta.org>
11553
11554 * window.c (Fdisplay_buffer): Move call to
11555 Vsplit_window_preferred_function out of conditions that check
11556 if window is eligible for vertical splitting.
11557 When Vsplit_window_preferred_function is non-nil, call it and use
11558 its non-nil return value as window. Otherwise, continue doing
11559 vertical splitting using Fsplit_window with arg horflag=nil.
11560 (syms_of_window) <Vsplit_window_preferred_function>: Change the
11561 default value from `split-window' to nil.
11562
115632008-03-29 Juri Linkov <juri@jurta.org>
11564
11565 * callint.c (Fcall_interactively): Revert 2008-03-16 change
11566 for interactive code letters 'b' and 'B'.
11567
115682008-03-29 Eli Zaretskii <eliz@gnu.org>
11569
11570 * fileio.c (Fexpand_file_name): Convert the value of $HOME to a
11571 multibyte string.
11572
115732008-03-29 Stefan Monnier <monnier@iro.umontreal.ca>
11574
11575 * keyboard.c (pending_funcalls): New var.
11576 (timer_check): Run it.
11577 (syms_of_keyboard): Initialize it.
11578 * terminal.c (Qrun_hook_with_args, Qdelete_terminal_functions)
11579 (Vdelete_terminal_functions): New vars.
11580 (syms_of_terminal): Initialize them.
11581 (Fdelete_terminal): Run delete-terminal-functions.
11582 * xdisp.c (safe_eval): Rewrite.
11583 (safe_call2): New fun.
11584 * frame.c (Qdelete_frame_functions): New var.
11585 (syms_of_frame): Initialize it.
11586 (Fdelete_frame): Use it and use safe_call2 and pending_funcalls.
11587 * lisp.h (safe_call2, pending_funcalls): Declare.
11588
115892008-03-28 Andreas Schwab <schwab@suse.de>
11590
11591 * indent.c (Fmove_to_column): Move declaration before statements.
11592
115932008-03-27 Stefan Monnier <monnier@iro.umontreal.ca>
11594
11595 * frame.h (enum fullscreen_type): Give it a name. Move it before use.
11596 (struct frame): Use bit fields for boolean vars.
11597
11598 * process.c (server_accept_connection): Simplify naming.
11599 (emacs_get_tty_pgrp): Use SDATA.
11600
11601 * coding.c (decode_coding_object): Fix last change.
11602
116032008-03-27 Jason Rumney <jasonr@gnu.org>
11604
11605 * w32fns.c (start_hourglass): Suppress hourglass on tty frames.
11606
116072008-03-27 Kenichi Handa <handa@ni.aist.go.jp>
11608
11609 * charset.c (Fdefine_charset_internal): Change the way of
11610 registering charsets in Vcharset_order_list.
11611 (syms_of_charset): Make the charset `eight-bit' supplementary.
11612
116132008-03-26 Alexandre Oliva <aoliva@redhat.com> (tiny change)
11614
11615 * regex.c (EXTEND_BUFFER): Change order of pointer addition
11616 operations, to avoid having the difference between pointers
11617 overflow.
11618
116192008-03-26 Stefan Monnier <monnier@iro.umontreal.ca>
11620
11621 * indent.c (check_display_width): New fun.
11622 (scan_for_column): Use it.
11623
11624 * data.c (syms_of_data): Mark most-positive-fixnum and
11625 most-negative-fixnum as constants.
11626
11627 * xdisp.c (redisplay_internal): Reset selected_frame earlier.
11628
11629 * indent.c (scan_for_column): Extract from current_column_1.
11630 Merge with the same code from Fmove_to_column.
11631 (current_column_1, Fmove_to_column): Use it.
11632
116332008-03-25 Stefan Monnier <monnier@iro.umontreal.ca>
11634
11635 * keymap.c (map_keymap_internal): New fun.
11636 (map_keymap): Use it.
11637 (Fmap_keymap_internal): New fun.
11638 (Fmap_keymap): Remove left-out test from before make_save_value.
11639
11640 * keymap.c (Fmap_keymap): Use `map-keymap-sorted.
11641
11642 * frame.c (Fmodify_frame_parameters, x_set_frame_parameters):
11643 Use XCAR/XCDR.
11644
11645 * process.h (struct Lisp_Process): Remove filter_multibyte.
11646 * process.c (QCfilter_multibyte): Remove.
11647 (setup_process_coding_systems): Don't use filter_multibyte.
11648 (Fstart_process, Fmake_network_process): Don't set filter_multibyte.
11649 (read_process_output): Don't adjust multibyteness to filter_multibyte.
11650 (Fset_process_filter_multibyte): Change the coding-system to
11651 approximate the previous behavior.
11652 (Fprocess_filter_multibyte_p): Get the multibyteness straight from the
11653 coding-system.
11654
11655 * coding.c (decode_coding_object): When not decoding into a buffer,
11656 obey the coding system's preference of (uni|multi)byte.
11657
116582008-03-24 Stefan Monnier <monnier@iro.umontreal.ca>
11659
11660 * casefiddle.c (casify_object): Avoid pathological N^2 worst case if
11661 every char is changed and has a different byte-length.
11662 (Fupcase_word, Fdowncase_word, Fcapitalize_word, operate_on_word):
11663 Fix int -> EMACS_INT.
11664
116652008-03-23 David Hansen <david.hansen@gmx.net>
11666
11667 * dbusbind.c (xd_read_message): Remove extra copying of message
11668 strings. Check for NULL `interface' or `member'.
11669
116702008-03-22 Eli Zaretskii <eliz@gnu.org>
11671
11672 * w32.c (readdir): If FindFirstFile/FindNextFile return in
11673 cFileName a file name that includes `?' characters, use the 8+3
11674 alias in cAlternateFileName instead.
11675
116762008-03-21 Stefan Monnier <monnier@iro.umontreal.ca>
11677
11678 * buffer.c (enlarge_buffer_text): Fix int -> EMACS_INT.
11679
116802008-03-20 Stefan Monnier <monnier@iro.umontreal.ca>
11681
11682 * intervals.c (temp_set_point, temp_set_point_both): Use EMACS_INT.
11683 (set_point, set_point_both): Use EMACS_INT. Remove `buffer' arg,
11684 work on current_buffer only instead (that was already the case
11685 for some of the code anyway).
11686 * buffer.h (set_point, set_point_both): Remove buffer arg, use long int.
11687 (temp_set_point, temp_set_point_both): Use EMACS_INT.
11688 (SET_PT, SET_PT_BOTH): Adjust.
11689 * intervals.h (set_point, temp_set_point, set_point_both)
11690 (temp_set_point_both): Remove redundant declarations.
11691
116922008-03-20 Stefan Monnier <monnier@iro.umontreal.ca>
11693
11694 * fileio.c (Finsert_file_contents):
11695 * lread.c (Feval_buffer): Use BUF_TEMP_SET_PT.
11696 * buffer.h (BUF_SET_PT): Remove. set_point_both doesn't work right
11697 when buffer != current_buffer anyway.
11698
116992008-03-20 Andreas Schwab <schwab@suse.de>
11700
11701 * callint.c (Fcall_interactively) [case 'B']: Use other-buffer
11702 as default.
11703
117042008-03-19 Jason Rumney <jasonr@gnu.org>
11705
11706 * w32fns.c (hourglass_timer, hourglass_hwnd): New variables.
11707 (syms_of_w32fns): Initialize them.
11708 (HOURGLASS_ID): New constant.
11709 (x_window_to_frame): Don't check hourglass_window.
11710 (w32_wnd_proc) <WM_TIMER>: Handle hourglass_timer.
11711 (w32_wnd_proc) <WM_EXITMENULOOP>: Set pending hourglass cursor.
11712 (w32_wnd_proc) <WM_SETCURSOR>: Set the hourglass or current cursor.
11713 (w32_wnd_proc) <WM_EMACS_SETCURSOR>: Set frame's current_cursor.
11714 Only change the cursor if hourglass is not active.
11715 (Fx_create_frame): Initialize frame's current_cursor.
11716 (hourglass_atimer): Remove.
11717 (hourglass_started): New function.
11718 (start_hourglass, cancel_hourglass, hide_hourglass): Adapt to w32.
11719 (show_hourglass): Adapt to w32, changing argument to frame.
11720
11721 * w32term.h (struct w32_output): Remove hourglass_window.
11722 Add current_cursor.
11723
11724 * eval.c (call_debugger, Fsignal):
11725 * keyboard.c (recursive_edit_1, cmd_error, Ftop_level)
11726 (command_loop_1, Fread_key_sequence, Fread_key_sequence_vector)
11727 (Fexecute_extended_command, cancel_hourglass_unwind):
11728 * minibuf.c (read_minibuf):
11729 * fns.c (Fy_or_n_p): Enable hourglass when HAVE_WINDOW_SYSTEM.
11730
117312008-03-19 Stefan Monnier <monnier@iro.umontreal.ca>
11732
11733 * window.c (run_funs): New fun.
11734 (run_window_configuration_change_hook): Use it to run the buffer-local
11735 and the global part of the hook.
11736
11737 * xdisp.c (format_mode_line_unwind_data): Add window argument.
11738 (unwind_format_mode_line): Restore selected window.
11739 (x_consider_frame_title, Fformat_mode_line): Set selected window.
11740
117412008-03-17 Stefan Monnier <monnier@iro.umontreal.ca>
11742
11743 * editfns.c (Fchar_equal): Check they are valid characters.
11744
11745 * buffer.h (Fbuffer_list): Declare (for use in callint.c).
11746
117472008-03-17 Andreas Schwab <schwab@suse.de>
11748
11749 * regex.c (re_match_2_internal): Properly match raw 8-bit bytes
11750 against a charset.
11751
11752 * lisp.h (Fbuffer_list): Declare.
11753
117542008-03-17 Jan Djärv <jan.h.d@swipnet.se>
d6c952f8 11755
aac0c6e3
MR
11756 * gtkutil.c (free_frame_tool_bar): Only call gtk_container_remove if
11757 handlebox_widget is != 0.
11758
117592008-03-16 Juri Linkov <juri@jurta.org>
11760
11761 * callint.c (Fcall_interactively): For interactive code letters
11762 'b' and 'B' put the buffer list into the list of default "future"
11763 values of the minibuffer.
11764
117652008-03-16 Andreas Schwab <schwab@suse.de>
11766
11767 * keyboard.c (read_key_sequence): Fix downcasing of letters with
11768 modifiers.
11769
11770 * regex.c (re_match_2_internal): Correct matching of a charset
11771 against latin-1 characters.
11772
117732008-03-16 Kenichi Handa <handa@m17n.org>
11774
11775 * coding.c (CHAR_STRING_ADVANCE_NO_UNIFY)
11776 (STRING_CHAR_ADVANCE_NO_UNIFY): New macros.
11777 (coding_alloc_by_making_gap): Fix the way to preserve data in the gap.
11778 (alloc_destination): Fix the 2nd arg to coding_alloc_by_making_gap.
11779 (encode_coding_utf_8): Use CHAR_STRING_ADVANCE_NO_UNIFY instead of
11780 CHAR_STRING_ADVANCE.
11781 (produce_chars): Fix for the case that the source and the
11782 destination are the same buffer. Use CHAR_STRING_ADVANCE_NO_UNIFY
11783 instead of CHAR_STRING_ADVANCE.
11784 (consume_chars): Use STRING_CHAR_ADVANCE_NO_UNIFY instead of
11785 STRING_CHAR_ADVANCE.
11786
117872008-03-15 Andreas Schwab <schwab@suse.de>
11788
11789 * regex.c (re_match_2_internal): Correct matching of eight bit
11790 characters in unibyte strings.
11791
117922008-03-15 Martin Rudalics <rudalics@gmx.at>
11793
11794 * buffer.c (overlays_in, Foverlays_in): Include empty overlays
11795 at end of range when it coincides with the end of the buffer.
11796
117972008-03-14 Eli Zaretskii <eliz@gnu.org>
11798
11799 * dired.c (Ffile_attributes) [WINDOWSNT]: Force inode be positive.
11800
11801 * w32fns.c (globals_of_w32fns, Fx_create_frame): Fix last change.
11802
118032008-03-14 Jason Rumney <jasonr@gnu.org>
11804
11805 * editfns.c (initial_tz): New variable.
11806 (syms_of_editfns): Initialize it.
11807 (Fset_time_zone_rule): Set it when first called.
11808 Use it when TZSTRING is nil.
11809
11810 * w32fns.c (MONITOR_DEFAULT_TO_NEAREST, struct MONITOR_INFO)
11811 (MonitorFromPoint_Proc, GetMonitorInfo_Proc): New definitions.
11812 (monitor_from_point_fn, get_monitor_info_fn): New globals.
11813 (globals_of_w32fns): Initialize them.
11814 (compute_tip_xy): Use them to position tooltips.
11815
118162008-03-14 Glenn Morris <rgm@gnu.org>
11817
11818 * emacs.c (main): Revert previous change.
11819 (standard_args): Revert -internal-script back to -scriptload,
11820 and remove the long-option form.
11821
118222008-03-13 Glenn Morris <rgm@gnu.org>
11823
11824 * emacs.c (main, standard_args): Rename -scriptload to -internal-script.
11825 Remove option -enable-font-backend.
11826
118272008-03-12 Stefan Monnier <monnier@iro.umontreal.ca>
11828
11829 * buffer.c (Fswitch_to_buffer): Fall back on pop-to-buffer.
11830
118312008-03-11 Jan Djärv <jan.h.d@swipnet.se>
11832
11833 * xterm.c (x_connection_closed): For GTK: If this is the last
11834 terminal just exit without closing the display.
11835
118362008-03-11 Jason Rumney <jasonr@gnu.org>
11837
11838 * w32font.c (w32font_full_name): Use floor to round.
11839
f0131492 118402008-03-10 Dhruva Krishnamurthy <dhruvakm@gmail.com> (tiny change)
aac0c6e3
MR
11841
11842 * sound.c (alsa_configure): Declare vol at beginning of block.
11843
11844 * fontset.c (Ffontset_info): Remove extra semicolon.
11845
118462008-03-10 Stefan Monnier <monnier@iro.umontreal.ca>
11847
11848 * fileio.c (Fsubstitute_in_file_name): Fix up computation of maximum
11849 size of resulting string.
11850
118512008-03-10 Jason Rumney <jasonr@gnu.org>
11852
11853 * dispnew.c (adjust_glyph_matrix): Initialize window_height.
11854
118552008-03-10 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
11856
11857 * xdisp.c (handle_single_display_spec): Undo 2007-10-16 changes.
11858 Don't pretend as if characters with display property haven't been
11859 consumed for string-replacing-string case.
11860
118612008-03-08 Kim F. Storm <storm@cua.dk>
11862
11863 * xdisp.c (GET_NEXT_DISPLAY_ELEMENT): New macro.
11864 (get_next_display_element, next_element_from_string)
11865 (next_element_from_ellipsis, next_element_from_buffer): Use it.
11866
118672008-03-08 Andreas Schwab <schwab@suse.de>
11868
11869 * process.h (struct Lisp_Process): Declare bit fields as unsigned.
11870
118712008-03-06 Jason Rumney <jasonr@gnu.org>
11872
11873 * w32font.c (w32_registry): Take font_type argument. Use ANSI
11874 when charset not specified. Only translate ANSI to unicode when
11875 font_type is truetype.
11876 (w32font_coverage_ok): New function.
11877 (add_font_entity_to_list): Use it to filter unsuitable fonts.
11878
118792008-03-05 Kenichi Handa <handa@ni.aist.go.jp>
11880
11881 * lread.c (Fread_char): Resolve modifiers.
11882 (Fread_char_exclusive): Likewise.
11883
11884 * character.c (char_resolve_modifier_mask): New function.
11885 (char_string): Use char_resolve_modifier_mask.
11886 (Fchar_resolve_modifiers): New function.
11887 (syms_of_character): Declare Fchar_resolve_modifiers as Lisp
11888 function.
11889
118902008-03-04 Jason Rumney <jasonr@gnu.org>
11891
11892 * makefile.w32-in: Always include w32font.c in the build.
11893 * w32font.c: Wrap in USE_FONT_BACKEND conditional.
11894
118952008-03-04 Andreas Schwab <schwab@suse.de>
11896
11897 * Makefile.in (clean): Remove emacs-*.*.* instead of emacs-*.
11898 (versionclean): Likewise.
11899
119002008-03-04 Juanma Barranquero <lekktu@gmail.com>
11901
11902 * .cvsignore: Add oo.
11903
119042008-03-03 Andreas Schwab <schwab@suse.de>
11905
11906 * coding.c (decode_coding_object): Inhibit gap shrinking while
11907 decoding in place.
11908
119092008-03-03 Dan Nicolaescu <dann@ics.uci.edu>
11910
11911 * w32term.c: Remove unused include "gnu.h".
11912 * makefile.w32-in (w32term.o): Don't depend on gnu.h.
11913
11914 * gnu.h: Rename to ...
11915 * emacs-icon.h: ... this.
11916 * xterm.c: Use emacs-icon.h instead of gnu.h.
11917 * Makefile (xterm.o): Depend on emacs-icon.h, not gnu.h.
11918
119192008-03-03 Juanma Barranquero <lekktu@gmail.com>
11920
11921 * w32font.c: Include math.h.
11922
119232008-03-03 Jason Rumney <jasonr@gnu.org>
11924
11925 * w32font.c (recompute_cached_metrics): Change font arg to w32font_info.
11926 Compute options separately.
11927 (w32font_open_internal): Set glyph_idx before caching metrics.
11928
11929 * w32font.h (NTM_PS_OPENTYPE, NTM_TT_OPENTYPE, NTM_TYPE1):
11930 Define if system headers don't.
11931 (struct w32font_info): Enlarge ascii_metrics. Add glyph_idx.
11932 (w32font_encode_char): Don't declare here.
11933
11934 * w32font.c (Quniscribe, QCformat): New symbols.
11935 (syms_of_w32font): Define them.
11936 (w32font_has_char): Indicate uncertainty.
11937 (w32font_encode_char): Encode as glyph point. Make static.
11938 (recompute_cached_metrics): New function.
11939 (w32font_open_internal): Use it. Set font to use glyph points
11940 initially. Set format based on type of font.
11941 (w32font_text_extents, w32font_draw): Optionally use glyph points.
11942 (w32_enumfont_pattern_entity): Accept backend arg. Set type based
11943 on it. Set format based on information available here.
11944 (add_font_entity_to_list): Identify backend based on opentype_only.
11945
119462008-03-02 Andreas Schwab <schwab@suse.de>
11947
11948 * ftfont.c (ftfont_pattern_entity): Fix aliasing violations.
11949
11950 * coding.c (decode_coding_big5, produce_chars):
11951 Fix typos in last change.
11952
119532008-03-02 Kentaro Ohkouchi <nanasess@fsm.ne.jp>
11954
11955 * gnu.h: New icon.
11956
119572008-03-02 Kenichi Handa <handa@m17n.org>
11958
11959 * coding.c (decode_coding_utf_8): When eol-type of CODING is
11960 `dos', don't decode '\r' if that is the last in the source.
11961 (decode_coding_utf_16, decode_coding_emacs_mule)
11962 (decode_coding_iso_2022, decode_coding_sjis, decode_coding_big5)
11963 (decode_coding_raw_text, decode_coding_charset): Likewise.
11964 (produce_chars): Don't decode EOL here. Use EMACS_INT.
11965
119662008-03-01 Jason Rumney <jasonr@gnu.org>
11967
11968 * w32font.c (w32font_full_name): Report point size for scalable fonts.
11969
119702008-03-01 Kim F. Storm <storm@cua.dk>
11971
11972 * dispextern.h (CHAR_GLYPH_SPACE_P): Check for default face.
11973
119742008-03-01 Jason Rumney <jasonr@gnu.org>
11975
11976 * w32font.c (w32font_full_name): New function.
11977 (w32font_open_internal): Use it.
11978
119792008-03-01 Kim F. Storm <storm@cua.dk>
11980
11981 * dispnew.c (line_draw_cost): Fix invalid glyph check.
11982
119832008-03-01 Jason Rumney <jasonr@gnu.org>
11984
11985 * font.c (font_unparse_fcname): Increase len when style is a symbol.
11986
119872008-03-01 Jan Djärv <jan.h.d@swipnet.se>
11988
11989 * xterm.c (handle_one_xevent): For Gtk+ and ConfigureNotify, call
11990 xg_frame_resized when the event is for the edit widget.
11991
11992 * gtkutil.h (xg_frame_resized): Renamed from xg_resize_widgets.
11993
11994 * gtkutil.c (xg_resize_outer_widget): Only do one of set_geometry or
11995 set_char_size.
11996 (xg_frame_resized): Renamed from xg_resize_widgets. Remove all
11997 operations on widgets here. Just set frame size if needed.
11998 (flush_and_sync, x_wm_size_hint_off, xg_pack_tool_bar): New functions.
11999 (xg_frame_set_char_size): Call x_wm_size_hint_off before resizing.
12000 (x_wm_set_size_hint): Set size hints on the edit widget only, not
12001 the whole frame.
12002 (xg_create_tool_bar): Move attachment of the tool bar to
12003 xg_pack_tool_bar. Do not attach the tool bar if there are no items.
12004 (free_frame_tool_bar): Remove call to SET_FRAME_GARBAGED.
12005
120062008-03-01 Jason Rumney <jasonr@gnu.org>
12007
12008 * w32fns.c (w32_msg_pump): Disable debug code.
12009
120102008-03-01 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
12011
12012 * m/intel386.h [MAC_OSX || DARWIN]: Define NO_ARG_ARRAY if _LP64.
12013
120142008-02-29 Chong Yidong <cyd@stupidchicken.com>
12015
12016 * xdisp.c (next_overlay_string): Don't set
12017 overlay_strings_at_end_processed_p if we're currently reading from
12018 a display string.
12019
120202008-02-29 Stefan Monnier <monnier@iro.umontreal.ca>
12021
12022 * xdisp.c (get_overlay_strings_1): Fix typo.
12023
120242008-02-29 Chong Yidong <cyd@stupidchicken.com>
12025
12026 * xdisp.c (get_overlay_strings_1): Add missing argument type.
12027
120282008-02-28 Kenichi Handa <handa@ni.aist.go.jp>
12029
12030 * ftfont.c (ftfont_match): Explicitly set pixelsize in pattern.
12031
12032 * xdisp.c (display_mode_element): Cancel the previous change.
12033 (decode_mode_spec): Likewise.
12034 (handle_auto_composed_prop): Don't make composition if it->string
12035 is a string.
12036
120372008-02-27 Kim F. Storm <storm@cua.dk>
12038
12039 * lisp.h (GLYPH): Change type from int to struct with separate char
12040 and face_id members.
12041 (GLYPH_MASK_FACE, GLYPH_MASK_CHAR): Delete macros.
12042 (GLYPH_CHAR, GLYPH_FACE): Remove slow versions with frame arg.
12043 (FAST_GLYPH_CHAR, FAST_GLYPH_FACE): Rename macros to ...
12044 (GLYPH_CHAR, GLYPH_FACE): ... these. Change users.
12045 (FAST_MAKE_GLYPH, MAKE_GLYPH): Remove. Rewrite users to use ...
12046 (SET_GLYPH, SET_GLYPH_CHAR, SET_GLYPH_FACE): ... these macros instead.
12047 (GLYPH_CODE_CHAR, GLYPH_CODE_FACE, GLYPH_CODE_P)
12048 (GLYPH_CODE_CHAR_VALID_P, SET_GLYPH_FROM_GLYPH_CODE): New macros to
12049 handle new Lisp glyph code encoding, either an integer or a cons.
12050
12051 * disptab.h (GLYPH_SIMPLE_P): Rewrite.
12052 (GLYPH_ALIAS): Delete.
12053 (GLYPH_ALIAS_P, GLYPH_FOLLOW_ALIASES): Rewrite.
12054 (GLYPH_LENGTH, GLYPH_STRING): Use GLYPH_CHAR.
12055 (GLYPH_FROM_CHAR): Replace macro by ...
12056 (SET_GLYPH_FROM_CHAR): ... this macro. Change users.
12057
12058 * dispextern.h (CHAR_GLYPH_SPACE_P): Simplify.
12059 (GLYPH_FROM_CHAR_GLYPH): Replace macro by ...
12060 (SET_GLYPH_FROM_CHAR_GLYPH): ... this macro. Change users.
12061 (GLYPH_INVALID_P): New macro.
12062 (spec_glyph_lookup_face): Update prototype.
12063
12064 * dispnew.c (line_draw_cost): Adapt to new glyph type.
12065 (build_frame_matrix_from_leaf_window): Adapt to new glyph type and
12066 new glyph code encoding.
12067 (spec_glyph_lookup_face): No return value; update passed glyph instead.
12068 (init_display): Use SET_CHAR_GLYPH to initialize space_glyph.
12069
12070 * xdisp.c (get_next_display_element, next_element_from_display_vector):
12071 Adapt to new glyph type and new glyph code encoding.
12072
12073 * term.c (encode_terminal_code, produce_special_glyphs): Likewise.
12074
12075 * indent.c (current_column, current_column_1, Fmove_to_column)
12076 (compute_motion): Adapt to new glyph code encoding.
12077
12078 * msdos.c (IT_write_glyphs): Adapt to new glyph type.
12079
120802008-02-27 Chong Yidong <cyd@stupidchicken.com>
12081
12082 * process.c (wait_reading_process_output): Check for window
12083 changes caused by timers.
12084 Suggested by Johan Bockgård.
12085
120862008-02-27 Glenn Morris <rgm@gnu.org>
12087
12088 * emacs.c (USAGE1): Add `--disable-font-backend'.
12089
120902008-02-27 Stefan Monnier <monnier@iro.umontreal.ca>
12091
12092 * fileio.c (Finsert_file_contents): Don't reset undo_list if no change
12093 is made to the buffer.
12094
120952008-02-26 Stefan Monnier <monnier@iro.umontreal.ca>
12096
12097 * dispextern.h (face_at_buffer_position, face_for_overlay_string)
12098 (face_at_string_position):
12099 * xfaces.c (face_at_buffer_position, face_for_overlay_string)
12100 (face_at_string_position):
12101 * xdisp.c (display_string, next_overlay_change):
12102 * buffer.h (overlays_at):
12103 * buffer.c (overlays_at): Use EMACS_INT for buffer positions.
12104 Update callers.
12105
121062008-02-26 Chong Yidong <cyd@stupidchicken.com>
12107
12108 * editfns.c (Fformat): Doc fix.
12109
121102008-02-26 Juanma Barranquero <lekktu@gmail.com>
12111
12112 * font.c (Ffont_spec, Ffont_at): Fix typos in docstrings.
12113 (Ffont_put, Flist_families, Ffont_fill_gstring, Ffont_drive_otf)
12114 (Ffont_otf_alternates, Fquery_font): Doc fixes.
12115
121162008-02-25 Stefan Monnier <monnier@iro.umontreal.ca>
12117
12118 * buffer.c (Fbuffer_swap_text): New function.
12119 (syms_of_buffer): Defsubr it.
12120
121212008-02-25 Chong Yidong <cyd@stupidchicken.com>
12122
12123 * keyboard.c (command_loop_1): Revert 2006-10-09 change.
12124
121252008-02-25 Jason Rumney <jasonr@gnu.org>
12126
12127 * w32font.c (w32font_draw): Draw one character at a time when padding.
12128
121292008-02-25 Stefan Monnier <monnier@iro.umontreal.ca>
12130
12131 * window.c (Fdelete_window, Fadjust_window_trailing_edge):
12132 Handle a nil arg. Use run_window_configuration_change_hook.
12133 (delete_window, adjust_window_trailing_edge): Don't handle nil any more.
12134 (Fenlarge_window, Fshrink_window, Fset_window_configuration):
12135 Use run_window_configuration_change_hook.
12136
121372008-02-25 Kenichi Handa <handa@ni.aist.go.jp>
12138
12139 * xdisp.c (x_produce_glyphs): For a visible glyph, assure at least
12140 1-pixel width.
12141
121422008-02-25 Kenichi Handa <handa@ni.aist.go.jp>
12143
12144 * xdisp.c (fill_glyph_string): Pay attention to glyph->padding_p.
12145 (append_glyph): Set glyph->pixel_width and glyph->padding_p to 1
12146 if the glyph in the font is zero pixel with.
12147
12148 * dispextern.h (struct glyph_string): New member padding_p.
12149
12150 * w32font.c (w32font_draw): Pay attention to s->padding_p.
12151
12152 * ftxfont.c (ftxfont_draw): Pay attention to s->padding_p.
12153
12154 * xfont.c (xfont_draw): Pay attention to s->padding_p.
12155
12156 * xftfont.c (xftfont_draw): Pay attention to s->padding_p.
12157
12158 * font.c: If the font driver doesn't have `shape' function, return Qnil.
12159
121602008-02-25 Jason Rumney <jasonr@gnu.org>
12161
12162 * w32fns.c (enum_font_cb2): Don't use raster fonts for Unicode.
12163
121642008-02-24 Stefan Monnier <monnier@iro.umontreal.ca>
12165
12166 Allow fine-grained image-cache flushing.
12167 * dispextern.h (struct image): Add `dependencies' field.
12168 (clear_image_caches): Change arg to Lisp_Object.
12169 * image.c (make_image): Initialize `dependencies' field.
12170 (clear_image_cache): Change arg to allow fine-grained flushing.
12171 Perform the flush even if image-cache-eviction-delay is nil.
12172 (clear_image_caches): Change arg to Lisp_Object.
12173 (Fclear_image_cache): Expand meaning of the argument.
12174 (mark_image): Mark `dependencies' field.
12175 * xfaces.c (clear_face_cache): Adapt arg to call to clear_image_caches.
12176 (lface_hash): Use XHASH rather than XFASTINT.
12177 (face_at_buffer_position): Fix int -> EMACS_INT position.
12178 * xdisp.c (next_overlay_change): Fix int -> EMACS_INT position.
12179 (select_frame_for_redisplay): Remove code duplication.
12180 (redisplay_internal): Adapt arg to call to clear_image_caches.
12181
121822008-02-24 Dan Nicolaescu <dann@ics.uci.edu>
12183
12184 * s/vms4-0.h:
12185 * s/vms4-2.h:
12186 * s/vms4-4.h:
12187 * s/vms5-5.h: Remove, unused.
12188
12189 * s/irix5-2.h:
12190 * s/irix6-0.h:
12191 * s/riscos5.h:
12192 * s/mach-bsd4-3.h:
12193 * m/mips4.h: Remove files for obsolete systems.
12194
12195 * Makefile.in:
12196 * filelock.c:
12197 * unexmips.c:
12198 * m/hp9000s300.h:
12199 * m/iris4d.h:
12200 * s/aix3-1.h:
12201 * s/hpux.h:
12202 * s/msdos.h:
12203 * s/usg5-0.h:
12204 * s/usg5-2-2.h:
12205 * s/usg5-2.h:
12206 * s/usg5-3.h: Remove references to obsolete variables.
12207
12208 * s/irix5-0.h: Remove, move all the contents ...
12209 * s/irix6-5.h: ... here. Simplify.
12210 * config.in: Regenerate.
12211
122122008-02-24 Jason Rumney <jasonr@gnu.org>
12213
12214 * w32term.c (x_draw_glyph_string_background): Clear the background
12215 manually when cleartype is in use.
12216 (x_draw_glyph_string_foreground): Draw text transparently when
12217 cleartype is in use.
12218
12219 * w32font.c (w32font_text_extents): Avoid getting HDC and selecting
12220 a font into it unless we have to.
12221
122222008-02-19 Stefan Monnier <monnier@iro.umontreal.ca>
12223
12224 * intervals.h (INT_LISPLIKE): Remove. It may misfire.
12225 (NULL_INTERVAL_P, SET_INTERVAL_PARENT): Don't use it.
d6c952f8 12226
aac0c6e3
MR
122272008-02-18 Jason Rumney <jasonr@gnu.org>
12228
12229 * w32fns.c (Fw32_shell_execute): Encode parameters.
12230
122312008-02-09 Eli Zaretskii <eliz@gnu.org>
12232
12233 * fileio.c (syms_of_fileio) <insert-default-directory>: Doc fix.
12234
122352008-02-05 Juanma Barranquero <lekktu@gmail.com>
12236
12237 * unexhp9k800.c (read_header): Replace `legal' with `valid'.
12238
122392008-02-24 Ulrich Neumerkel <ulrich@complang.tuwien.ac.at> (tiny change)
12240
12241 * xterm.c (x_set_offset): Don't change the gravity if
12242 CHANGE_GRAVITY is -1.
12243
122442008-02-23 Chong Yidong <cyd@stupidchicken.com>
12245
12246 * fileio.c (auto_save_error_occurred): New var.
12247 (auto_save_error): Set it.
12248 (Fdo_auto_save): Don't overwrite the error message if an auto-save
12249 error occurred.
12250
122512008-02-23 Eli Zaretskii <eliz@gnu.org>
12252
12253 * w32.c (globals_of_w32): Add initializations for
12254 g_b_init_get_sid_sub_authority and
12255 g_b_init_get_sid_sub_authority_count.
12256
122572008-02-22 Stefan Monnier <monnier@iro.umontreal.ca>
12258
12259 * font.c (font_match_xlfd, font_check_xlfd_parse): New funs.
12260 (font_parse_xlfd): Use them for sanity check.
12261 (Finternal_set_font_style_table): Make sure the table is bijective.
12262
12263 Consolidate the image_cache to the terminal struct.
12264 * termhooks.h (P_): Remove redundant def.
12265 (struct terminal): New field `image_cache'.
12266 * frame.h (FRAME_IMAGE_CACHE): New macro. Use it everywhere in place
12267 of FRAME_X_IMAGE_CACHE.
12268 * xterm.h (struct x_display_info): Remove image_cache field.
12269 (FRAME_X_IMAGE_CACHE): Remove. Use FRAME_IMAGE_CACHE instead.
12270 * w32term.h (struct w32_display_info): Remove image_cache field.
12271 (FRAME_X_IMAGE_CACHE): Remove. Use FRAME_IMAGE_CACHE instead.
12272 * macterm.h (struct mac_display_info): Remove image_cache field.
12273 (FRAME_X_IMAGE_CACHE): Remove. Use FRAME_IMAGE_CACHE instead.
12274 * xterm.c (x_term_init):
12275 * w32term.c (w32_term_init):
12276 * macterm.c (mac_term_init): Set the image_cache in the terminal.
12277 * dispextern.h (clear_image_cache, forall_images_in_image_cache):
12278 Remove declarations.
12279 (clear_image_caches, mark_image_cache): New declarations.
12280 * xfaces.c (clear_face_cache):
12281 * xdisp.c (redisplay_internal): Use clear_image_caches.
12282 * image.c (clear_image_cache): Don't check that a frame is on
12283 a window-system before checking if it shares the same cache.
12284 (clear_image_caches): New function.
12285 (Fclear_image_cache): Use it.
12286 (mark_image): Move from allo.c.
12287 (mark_image_cache): Move from alloc.c and forall_images_in_image_cache.
12288 * alloc.c (mark_image, mark_image_cache): Move to image.c.
12289 (mark_object): Don't call mark_image_cache for frames.
12290 (mark_terminals): Call mark_image_cache.
12291
12292 * lisp.h (Fdelete_terminal): Declare.
12293
12294 * charset.h (CHECK_CHARSET, CHECK_CHARSET_GET_ID)
12295 (CHECK_CHARSET_GET_ATTR): Don't use the inexistent return value of
12296 wrong_type_argument.
12297
122982008-02-22 Kenichi Handa <handa@ni.aist.go.jp>
12299
12300 * Makefile.in (lisp): Remove devanagari.el, kannada.el,
12301 malayalam.el, and tamil.el. Add sinhala.el.
12302
123032008-02-21 Stefan Monnier <monnier@iro.umontreal.ca>
12304
12305 * xterm.c (x_connection_closed): Consolidate identical tests.
12306 (x_delete_terminal): Don't crash if called via x_connection_closed.
12307
123082008-02-21 Kenichi Handa <handa@ni.aist.go.jp>
12309
12310 * xdisp.c (decode_mode_spec): New arg string.
12311 (display_mode_element): Adjust for the above change.
12312
123132008-02-19 Stefan Monnier <monnier@iro.umontreal.ca>
12314
12315 * callint.c (Fcall_interactively): Use AREF.
12316
123172008-02-18 Stefan Monnier <monnier@iro.umontreal.ca>
12318
12319 * font.c (font_unparse_xlfd): Don't ignore integer pixel size specs.
12320
123212008-02-18 Jan Djärv <jan.h.d@swipnet.se>
12322
12323 * xfns.c (Fx_show_tip): Set string to " " if empty.
12324
123252008-02-17 Dan Nicolaescu <dann@ics.uci.edu>
12326
12327 * callint.c (syms_of_callint): Initialize Vmark_even_if_inactive
12328 with Qt.
12329
123302008-02-17 Kenichi Handa <handa@m17n.org>
12331
12332 * ftfont.c (ftfont_shape): Return Lispy number.
12333
12334 * xfaces.c (prepare_face_for_display): Use display_info->font->fid
12335 for GCs.
12336 (Finternal_set_font_selection_order): Call font_update_sort_order
12337 only when enable_font_backend is set.
12338 (realize_x_face): Set face->font_info to that of default face only
12339 when enable_font_backend is set.
12340
12341 * xdisp.c (handle_composition_prop): Set it->c to the fist
12342 character of the composed region.
12343 (fill_composite_glyph_string): Set base_face->font_info to
12344 s->font_info. Get a face for ascii from base_face->ascii_face.
12345 (BUILD_COMPOSITE_GLYPH_STRING): Call fill_composite_glyph_string
12346 with a face already decided.
12347 (x_produce_glyphs): Be sure to set it->ascent and it->descent to
12348 non-negative.
12349 (x_produce_glyphs): If the composition method is ..._WITH_GLYPH_STRING,
12350 call font_prepare_composition unconditionally.
12351
12352 * xfns.c (x_make_gc): Use the default font id of the frame for GCs.
12353
12354 * xterm.h (struct x_display_info): New member font.
12355
12356 * xterm.c (x_set_cursor_gc): Use display_info->font->fid for GCs.
12357 (x_set_mouse_face_gc, x_new_font): Likewise.
12358 (x_term_init): Setup display_info->font.
12359 (x_delete_terminal): Free display_info->font.
12360
12361 * xfont.c (xfont_draw): Use BLOCK_INPUT and UNBLOCK_INPUT.
12362
12363 * ftxfont.c (ftxfont_default_fid): Delete it.
12364 (ftxfont_open): Set xfont->fid to 0.
12365 (ftxfont_end_for_frame): Clear data specific to the frame and the
12366 font-driver.
12367
12368 * xftfont.c (xftfont_default_fid): Delete it.
12369 (xftfont_open): Set xfont->fid to 0.
12370
12371 * fontset.c (FONTSET_OBJLIST): New macro.
12372 (fontset_find_font): Update font-object list of the fontset.
12373 (free_realized_fontset): New function.
12374 (free_face_fontset): Call free_realized_fontset.
12375 (Ffont_info): Call font_close_object only when enable_font_backend
12376 is set.
12377
12378 * font.c [HAVE_X_WINDOWS]: Include xterm.h.
12379 [HAVE_NTGUI]: Include w32term.h.
12380 [MAC_OS]: Include macterm.ch.
12381 (font_otf_ValueRecord): Use make_number.
12382 (font_finish_cache): Fix handling of reference count.
12383 (font_clear_cache): Update num_fonts.
12384 (font_open_entity): Update smallest_char_width and
12385 smallest_font_height of the frame.
12386 (font_close_object): Update num_fonts.
12387 (Fclear_font_cache): Fix finding the target cache data.
12388
123892008-02-16 Glenn Morris <rgm@gnu.org>
12390
12391 * fontset.c (Finternal_char_font): Fix compilation warning.
12392
123932008-02-16 Eli Zaretskii <eliz@gnu.org>
12394
12395 * w32.c (init_user_info): Use TOKEN_USER and TOKEN_PRIMARY_GROUP
12396 instead of char arrays. Enlarge the size of array passed to
12397 get_token_information.
12398
12399 * font.c (Ffont_fill_gstring, Fget_font_glyphs): Fix compilation
12400 warnings.
12401
124022008-02-15 Dan Nicolaescu <dann@ics.uci.edu>
12403
12404 * .gdbinit: Don't set `args', it breaks gdb --args.
12405
124062008-02-14 Stefan Monnier <monnier@iro.umontreal.ca>
12407
12408 * fileio.c (Finsert_file_contents): Adjust offsets when replacing
12409 within a narrowed buffer.
12410
124112008-02-14 Kenichi Handa <handa@ni.aist.go.jp>
12412
12413 * coding.c (decode_coding_object, encode_coding_object):
12414 Preserve Vdeactivate_mark. Delete unnecessary call of Fcurrent_buffer.
12415
124162008-02-12 Stefan Monnier <monnier@iro.umontreal.ca>
12417
12418 * coding.c (coding_set_destination): Use BEG_BYTE rather than
12419 hardcoding 1.
12420 (detect_coding_system):
12421 * lisp.h (detect_coding_system, chars_in_text, multibyte_chars_in_text)
12422 (string_char_to_byte, string_byte_to_char, insert_from_gap):
12423 * insdel.c (insert_from_gap):
12424 * fns.c (string_char_byte_cache_charpos, string_char_byte_cache_bytepos)
12425 (string_char_to_byte, string_byte_to_char, string_make_multibyte)
12426 (string_to_multibyte):
12427 * character.c (chars_in_text, multibyte_chars_in_text):
12428 * fileio.c (Finsert_file_contents): Use EMACS_INT for buffer positions.
12429
12430 * character.h (FETCH_STRING_CHAR_ADVANCE)
12431 (FETCH_STRING_CHAR_AS_MULTIBYTE_ADVANCE)
12432 (FETCH_STRING_CHAR_ADVANCE_NO_CHECK): Use SDATA and SREF.
12433 (DEC_POS, BUF_DEC_POS): Use BEG_BYTE rather than hardcoding 1.
12434
12435 * casefiddle.c (casify_region): Only call after-change and composition
12436 functions on the part of the region that was changed.
12437
12438 * keyboard.c (read_avail_input):
12439 * frame.c (Fdelete_frame): Call Fdelete_terminal.
12440
124412008-02-11 Stefan Monnier <monnier@iro.umontreal.ca>
12442
12443 * buffer.c (clone_per_buffer_values, reset_buffer_local_variables)
12444 (Fbuffer_local_value, Fbuffer_local_variables): Don't forget undo_list.
12445
124462008-02-11 Juanma Barranquero <lekktu@gmail.com>
12447
12448 * w32menu.c (push_submenu_start, push_submenu_end)
12449 (push_left_right_boundary, push_menu_pane, push_menu_item):
12450 * keyboard.c (read_key_sequence): Don't pass args with side effects
12451 to AREF, it fails when compiling with -DENABLE_CHECKING.
12452
124532008-02-11 Kenichi Handa <handa@ni.aist.go.jp>
12454
12455 * Makefile.in (${lispsource}international/charprop.el):
12456 Delete this target.
12457
12458 * search.c (boyer_moore): Fix incorrect synching of the trunk and
12459 emacs-unicode-2.
12460
124612008-02-11 Stefan Monnier <monnier@iro.umontreal.ca>
12462
12463 * terminal.c (Fdelete_terminal): Clean up the `force' path.
12464
124652008-02-10 Stefan Monnier <monnier@iro.umontreal.ca>
12466
12467 * frame.c (Qnoelisp): New symbol.
12468 (syms_of_frame): Initialize it.
12469 (Fdelete_frame): Use it to distinguish a mere `force' passed from some
12470 harmless Elisp code, from a strong `force' from x_connection_closed.
12471 * frame.h (Qnoelisp): Declare.
12472 * xterm.c (x_connection_closed): Pass `noelisp'.
12473
12474 * lisp.h (struct Lisp_Misc_Any, struct Lisp_Marker)
12475 (struct Lisp_Overlay, struct Lisp_Kboard_Objfwd)
12476 (struct Lisp_Save_Value, struct Lisp_Free): Use enum Lisp_Misc_Type
12477 rather than `int' for the type of `type'.
12478
124792008-02-10 Dan Nicolaescu <dann@ics.uci.edu>
12480
12481 * s/gnu-linux.h: Remove support for non-ELF and linux-1.x.
12482
12483 * Makefile.in (GNUC): Remove support for gcc-1.x.
12484
124852008-02-10 Richard Stallman <rms@gnu.org>
12486
12487 * lisp.h (ASET): Use AREF, not ASLOT.
12488
124892008-02-10 Stefan Monnier <monnier@iro.umontreal.ca>
12490
12491 * lisp.h (ASET): Check bounds.
12492
124932008-02-10 Glenn Morris <rgm@gnu.org>
12494
12495 * buffer.c (mode-name): Doc fix.
12496
124972008-02-09 Dan Nicolaescu <dann@ics.uci.edu>
12498
12499 * Makefile.in:
12500 * emacs.c:
12501 * gmalloc.c:
12502 * keyboard.c:
12503 * lisp.h:
12504 * m/ibm370aix.h:
12505 * process.c:
12506 * regex.c:
12507 * s/hpux.h:
12508 * sysdep.c:
12509 * sysselect.h:
12510 * systty.h:
12511 * unexec.c:
12512 * w32term.c:
12513 * xsmfns.c:
12514 * xterm.c: Remove code that deals with obsolete variables.
12515
12516 * s/msdos.h (DONT_NEED_ENVIRON): Don't define.
12517
12518 * ecrt0.c: Replace the DONT_NEED_ENVIRON test with MSDOS test,
12519 nothing else needs it anymore.
12520
125212008-02-09 Eli Zaretskii <eliz@gnu.org>
12522
12523 * buffer.h (FETCH_CHAR_AS_MULTIBYTE): Use unibyte_to_multibyte_table
12524 instead of unibyte_char_to_multibyte.
12525
125262008-02-09 Dan Nicolaescu <dann@ics.uci.edu>
12527
12528 * s/gnu-linux.h: Remove commented out code.
12529
12530 * unexec.c: Remove references to obsolete variable COFF_ENCAPSULATE.
12531
12532 * Makefile.in: Update what RMS says about using autoconf.
12533 (C_COMPILER, COFF_ENCAPSULATE, MAKE_PARALLEL): Remove obsolete variable.
12534 (C_SWITCH_MACHINE_1, C_SWITCH_SYSTEM_1, C_SWITCH_SITE_1)
12535 (C_SWITCH_X_SITE_1, C_SWITCH_X_MACHINE_1)
12536 (C_SWITCH_X_SYSTEM_1): Move invariant code outside conditional.
12537
125382008-02-08 Stefan Monnier <monnier@iro.umontreal.ca>
12539
12540 * keymap.c (Fkey_description): Move side effect outside of macro call.
12541
12542 * xfaces.c (Finternal_make_lisp_face):
12543 * keyboard.c (add_command_key, parse_menu_item): Use ASET.
12544
12545 * fontset.c (free_face_fontset): Use FONTSET_FROM_ID.
12546 (syms_of_fontset): Use ASET.
12547
12548 * fns.c (concat): Move side effect outside of macro call.
12549 (hash_clear): Use ASET.
12550
125512008-02-08 Richard Stallman <rms@gnu.org>
12552
12553 * frame.c (Fdelete_frame): If FORCE, don't call hooks.
12554 If FORCE, and frame has a surrogate minibuffer for another frame,
12555 delete the other frame first.
12556
125572008-02-07 Timo Savola <timo.savola@iki.fi>
12558
12559 * xterm.c (x_detect_focus_change): Handle embed client message.
12560 (handle_one_xevent): Ditto.
12561 (handle_one_xevent): If embedded and we get a button press/release,
12562 request focus.
12563 (xembed_set_info, xembed_send_message): New functions.
12564 (x_make_frame_visible): Call xembed_set_info if embedded.
12565 (x_make_frame_invisible): Call xembed_set_info if embedded.
12566 (x_term_init): Initialize Xatom_XEMBED.
12567 (x_make_frame_visible): Check for FRAME_X_EMBEDDED_P also.
12568 (x_iconify_frame): Ditto.
12569
12570 * xterm.h (struct x_display_info): Add AtomXatom_XEMBED.
12571 (enum xembed_info, enum xembed_message, enum xembed_focus)
12572 (enum xembed_modifier, enum xembed_accelerator): New.
12573 (xembed_set_info, xembed_send_message): Declare.
12574 (FRAME_X_EMBEDDED_P): New.
12575
12576 * gtkutil.c (xg_create_frame_widgets): If frame is embedded, call
12577 gtk_plug_new.
12578
12579 * xfns.c (Fx_create_frame): Do not override the explicitly set parent
12580 window ID of a frame.
12581 (x_window): Reparent frame if embedded.
12582 (Fx_create_frame): Don't set border width if embedded.
12583
12584 * emacs.c (USAGE3): Add --parent-id.
12585 (standard_args): Ditto.
12586
125872008-02-07 Jan Djärv <jan.h.d@swipnet.se>
12588
12589 * coding.c (DECODE_EMACS_MULE_COMPOSITION_CHAR): Use "do...while (0)".
12590
125912008-02-07 Jim Meyering <meyering@redhat.com>
12592
12593 Use "do...while (0)", not "if (1)...else" in macro definitions.
12594 The latter provokes a warning from gcc about the empty else, when
12595 followed by ";". Also, without that trailing semicolon, it would
12596 silently swallow up any following statement.
12597 * syntax.h (SETUP_SYNTAX_TABLE)
12598 (SETUP_SYNTAX_TABLE_FOR_OBJECT): Likewise.
12599 * buffer.h (DECODE_POSITION): Likewise.
12600 * character.h (FETCH_STRING_CHAR_ADVANCE): Likewise.
12601 (FETCH_STRING_CHAR_AS_MULTIBYTE_ADVANCE): Likewise.
12602 (FETCH_STRING_CHAR_ADVANCE_NO_CHECK): Likewise.
12603 (FETCH_CHAR_ADVANCE): Likewise.
12604 (FETCH_CHAR_ADVANCE_NO_CHECK): Likewise.
12605
126062008-02-07 Jim Meyering <meyering@redhat.com>
12607
12608 * lread.c [lint]: Don't include <sys/inode.h>.
12609
126102008-02-07 Stefan Monnier <monnier@iro.umontreal.ca>
12611
12612 * xselect.c (x_handle_dnd_message):
12613 * xmenu.c (digest_single_submenu, xmenu_show):
12614 * xdisp.c (with_echo_area_buffer_unwind_data)
12615 (format_mode_line_unwind_data, unwind_format_mode_line)
12616 (display_menu_bar):
12617 * eval.c (Ffetch_bytecode):
12618 * doc.c (store_function_docstring):
12619 * ccl.c (resolve_symbol_ccl_program, ccl_get_compiled_code)
12620 (Fccl_execute, Fccl_execute_on_string, Fregister_code_conversion_map):
12621 * buffer.c (add_overlay_mod_hooklist): Use ASET.
12622
126232008-02-07 Kenichi Handa <handa@m17n.org>
12624
12625 * ftxfont.c (ftxfont_open): Don't set
12626 dpyinfo->smallest_font_height and dpyinfo->smallest_char_width to 0.
12627
12628 * ftfont.c (ftfont_open): Fix previous change.
12629
126302008-02-06 Jason Rumney <jasonr@gnu.org>
12631
12632 * w32font.c (w32font_text_extents): Fill in lbearing metric.
12633 Use cached metrics for ASCII characters.
12634 (w32font_open_internal): Don't set font's owning_frame.
12635 Cache metrics for ASCII characters.
12636
12637 * w32font.h (struct w32font_info): Add ascii_metrics.
12638 Remove owning_frame.
12639
126402008-02-06 Kenichi Handa <handa@ni.aist.go.jp>
12641
12642 * xdisp.c (x_produce_glyphs): Don't set it->ascent and it->descent
12643 to negative value.
12644
12645 * ftxfont.c (ftxfont_draw): Use s->font_info, not face->font_info.
12646
12647 * ftfont.c (ftfont_open): Fix calculation of font->font.average_width.
12648
12649 * charset.c (syms_of_charset): Set QCtest and Qeq.
12650
126512008-02-06 Stefan Monnier <monnier@iro.umontreal.ca>
12652
12653 * process.c (Fstart_process):
12654 * callproc.c (Fcall_process): Handle the case where
12655 Funhandled_file_name_directory returns nil.
12656
12657 * font.h (enum lgstring_indices, enum lglyph_indices): New enums.
12658 (LGSTRING_SLOT, LGSTRING_SET_SLOT): New macros.
12659 * font.c (check_gstring): Use them and AREF to access the vector before
12660 we know it's really a gstring.
12661 (Ffont_shape_text): Fix typo.
46e722a9 12662 (Ffont_shape_text, Ffont_otf_alternates): Fix up int/Lisp_Object mixups.
aac0c6e3
MR
12663
12664 * composite.h (Fcompose_region_internal, Fcompose_string_internal):
12665 Declare.
12666
12667 * chartab.c (make_sub_char_table): Remove noop-yet-incorrect statement.
12668
126692008-02-05 Jason Rumney <jasonr@gnu.org>
12670
12671 * w32font.c (w32font_open_internal): Fill min_width with tmAveCharWidth.
12672 Set smallest_font_height and smallest_char_width in display info.
12673
126742008-02-05 Kenichi Handa <handa@ni.aist.go.jp>
12675
12676 * coding.c (decode_eol): Pay attention to coding->dst_multibyte.
12677
126782008-02-05 Miles Bader <miles@gnu.org>
12679
12680 * xfaces.c (get_lface_attributes, merge_named_face)
12681 (lookup_named_face, lookup_derived_face, realize_named_face):
12682 Revert 2008-02-01 change by cyd@stupidchicken.com.
12683
126842008-02-04 Kenichi Handa <handa@ni.aist.go.jp>
12685
12686 * fontset.c (Ffontset_info): Handle the case of inhibitting the
12687 fallback fonts.
12688 (Ffontset_info) [USE_FONT_BACKEND]: Fix getting of opened font names.
12689
126902008-02-04 Jason Rumney <jasonr@gnu.org>
12691
12692 * w32font.c (w32font_open_internal): Use font_unparse_fcname to
12693 set full_name.
12694 (w32font_open_internal): Use xmalloc, xrealloc, xfree.
12695
126962008-02-03 Jason Rumney <jasonr@gnu.org>
12697
12698 * makefile.w32-in (OBJ1): Include font.o here.
12699 (FONTOBJ) [USE_FONTBACKEND]: Instead of here.
12700
127012008-02-02 Jason Rumney <jasonr@gnu.org>
12702
12703 * makefile.w32-in (temacs): Bump EMHEAP to 21.
12704
127052008-02-01 Jason Rumney <jasonr@gnu.org>
12706
12707 * s/cygwin.h: Define VIRT_ADDR_VARIES.
12708
12709 * puresize.h [VIRT_ADDR_VARIES]: Don't include CYGWIN in condition.
12710
127112008-02-01 Andreas Schwab <schwab@suse.de>
12712
12713 * Makefile.in (shortlisp, lisp): Update for rename of
12714 ../lisp/language/myanmar.el.
12715
127162008-02-01 Chong Yidong <cyd@stupidchicken.com>
12717
12718 * xfaces.c (get_lface_attributes): Delete function.
12719 (merge_named_face, lookup_named_face, lookup_derived_face)
12720 (realize_named_face): Call lface_from_face_name directly, and use
12721 the fact that merge_face_vectors does not alter its FROM argument.
12722
127232008-02-01 Jason Rumney <jasonr@gnu.org>
12724
12725 * w32term.c (w32_read_socket) <WM_CHAR>: Decode non-Unicode
12726 input in the default locale. Handle non-Unicode multibyte input.
12727
127282008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
12729
12730 * fontset.c (reorder_font_vector): Exclude nil elements from the
12731 font group. Don't try multiple fonts.
12732 (fontset_font): Adjust for the above change.
12733 (Finternal_char_font): Return nil if the found font doesn't
12734 contain the character ch.
12735
12736 * Makefile.in (lisp, shortlisp): Add cham.el.
12737
127382008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
12739
12740 * font.h (FONTP): Make it return 1 also for a font-object.
12741
12742 * .gdbinit (xfontset): New function.
12743
12744 * font.c (font_find_for_lface): Check if the character C is
12745 supported or not only for the first font.
12746
12747 * fontset.c (reorder_font_vector): Fix typo.
12748 (fontset_find_font): Don't add a font-spec specifying a script.
12749 Use 0 (not Qt) for the indication of empty font-group. Change the
12750 format of RFONT-DEF. Return Qt if no font in the font-group
12751 support the character.
12752 (fontset_font): Adjust for the above change. If no font was
12753 found the character, remember that.
12754 (face_for_char): Adjust for the change of RFONT-DEF.
12755 (Fset_fontset_font): Allow nil for FONT-SPEC to explicitly specify
12756 no font for the target.
12757 (Finternal_char_font): Adjust for the change of RFONT-DEF.
12758
127592008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
12760
12761 * font.c (font_load_for_face): Handle the case that the font in
12762 face->lface is a string.
12763
127642008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
12765
12766 * xfaces.c (set_lface_from_font_and_fontset): Set the fontname in lface.
12767
127682008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
12769
12770 * xfaces.c (Finternal_set_lisp_face_attribute) [USE_FONT_BACKEND]:
12771 Fix previous change. If the frame is not on a window system,
12772 signal an error.
12773
127742008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
12775
12776 * coding.c (decode_coding_object, encode_coding_object): Adjust
12777 marker positions after conversion.
12778
12779 * lisp.h (struct Lisp_Marker): New member need_adjustment.
12780
127812008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
12782
12783 * font.c (font_find_for_lface): Fix the handling of the return
12784 value of font_has_char.
12785 (Ffont_shape_text): Fix previous change.
12786
12787 * fontset.c (FONTSET_REF_AND_RANGE): Delete it.
12788 (fontset_ref_and_range): Delete it.
12789 (fontset_find_font): Call char_table_ref_and_range instead of
12790 FONTSET_REF_AND_RANGE.
12791 (make_fontset): Don't setup font groups of Latin here.
12792 (Fset_fontset_font): Don't overwrite the setting of FONTSET_ASCII.
12793 (new_fontset_from_font): Make the specified font the default for
12794 all Latin characters.
12795
127962008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
12797
12798 * xfaces.c (Finternal_set_lisp_face_attribute): Check if the frame
12799 is on a window system before accessing the fontset of the frame.
12800
128012008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
12802
12803 * Makefile.in (lisp, shortlisp): Add kherm.el and myanmar.el.
12804
12805 * ftfont.c (ftfont_driver): Set ftfont_shape in ftfont_driver only
12806 when both HAVE_M17N_FLT and HAVE_LIBOTF are defined.
12807
12808 * font.c (Ffont_shape_text): If the font driver doesn't have a
12809 shaper function, make zero-width glyphs to have at least one-pixel
12810 width. Fix setting of `to' field of glyphs.
12811
128122008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
12813
12814 * ftfont.c (ftfont_drive_otf): Fix setting of FROM and TO slots of
12815 glyphs.
12816
12817 * font.h (struct font_driver): Improve docstring of member `shape'.
12818
128192008-02-01 Kenichi Handa <handa@m17n.org>
12820
12821 * composite.c (syms_of_composite): Fix docstring of
12822 auto-composition-function.
12823
12824 * font.h (LGLYPH_SIZE): New macro.
12825
12826 * font.c (Ffont_fill_gstring): Stop filling when a character not
12827 supported by the font is found.
12828 (Ffont_shape_text): When a shape callback function returns nil,
12829 try at most two more times with larger gstring.
12830 (Ffont_at): Fix getting of w. Call font_at with correct 5th argument.
12831
12832 * xdisp.c (handle_auto_composed_prop): Change the argument to
12833 auto-composition-function.
12834
12835 * ftfont.c (ftfont_encode_char): Use the macro FONT_INVALID_CODE.
12836 (ftfont_shape_by_flt): If an element of lgstring is nil, make a
12837 Lispy glyph and store it in the lgstring.
12838
12839 * xfont.c (xfont_encode_char): Use the macro FONT_INVALID_CODE.
12840
12841 * xftfont.c (xftfont_encode_char): Use the macro FONT_INVALID_CODE.
12842
128432008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
12844
12845 * font.c (Ffont_shape_text): Avoid unnecessary composition.
12846
12847 * fontset.c (Vfont_encoding_charset_alist): New variable.
12848 (syms_of_fontset): DEFVAR it.
12849 (reorder_font_vector, fontset_find_font): Optimize for the case of
12850 no need of reordering.
12851 (face_for_char): Map the charset property by
12852 Vfont_encoding_charset_alist.
12853
128542008-02-01 Jason Rumney <jasonr@gnu.org>
12855
12856 * w32font.c (logfonts_match): Don't check adstyle here.
12857 (font_matches_spec): Check here against physical font instead.
12858 (add_font_entity_to_list): Avoid some substitutions.
12859
12860 * font.c (font_parse_fcname): Default weight and slant to normal.
12861 (font_score): Prefer normal fonts if weight or slant unspecified.
12862 (font_score) [WINDOWSNT]: Scale weight difference down to closer
12863 match freetype scores.
12864
128652008-02-01 Jason Rumney <jasonr@gnu.org>
12866
12867 * w32font.c (w32font_text_extents): Don't use the frame stored in the
12868 font, as it may have been deleted.
12869 (w32_enumfont_pattern_entity): Map generic family to adstyle using
12870 most common hyphenless variation.
12871 (logfonts_match): Check generic family.
12872 (font_matches_spec): Don't check generic family here.
12873 (fill_in_logfont): Set generic family based on adstyle.
12874
12875 * w32font.h (w32font_get_cache): Update declaration.
12876
128772008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
12878
12879 * ftfont.c (ftfont_get_cache): Adjust the argument type.
12880
12881 * frame.c (x_set_font_backend): Don't call Fclear_font_cache.
12882 If none of the new drivers are available, call font_update_drivers
12883 with the old drivers.
12884
12885 * w32font.c (w32font_get_cache): Adjust the argument type.
12886
12887 * xfont.c (xfont_get_cache): Adjust the argument type.
12888
12889 * font.h (struct font_driver): Change argument type of get_cache.
12890
12891 * xftfont.c (xftfont_start_for_frame): Delete prototype.
12892
12893 * font.c (Ffont_get): Fix arguments to Fassoc.
12894 (font_prepare_cache, font_finish_cache, font_get_cache): New functions.
12895 (font_clear_cache): New function.
12896 (font_list_entities, font_matching_entity): Use font_get_cache.
12897 (font_update_drivers): Call font_clear_cache when finishing a driver.
12898
12899 * fontset.c (fontset_find_font): Fix previous change.
12900
129012008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
12902
12903 * xterm.c (x_check_font) [USE_FONT_BACKEND]: Don't access
12904 dpyinfo->font_table.
12905 (x_delete_display) [USE_FONT_BACKEND]: Likewise.
12906 (x_delete_terminal) [USE_FONT_BACKEND]: Likewise.
12907
12908 * font.c (font_at): Handle the case that the arg C is negative.
12909 Handle the unibyte case.
12910 (Ffont_at): Call font_at with the arg C -1.
12911
12912 * xdisp.c (handle_auto_composed_prop): Don't get a character at
12913 the position here, and call font_at with the arg C -1.
12914 Don't check the range of the existing composition at the point.
12915
129162008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
12917
12918 * fontset.c (fontset_add): New args charset_id and family.
12919 Change caller.
12920 (load_font_get_repertory, fontset_find_font): Assume that
12921 font_spec is always a font-spec object.
12922 (Fset_fontset_font): Always store a font-spec object in a fontset.
12923
12924 * xdisp.c (handle_auto_composed_prop): Use Fget_text_property
12925 instead of get_property_and_range.
12926
129272008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
12928
12929 * xftfont.c (struct xftfont_info): Delete the member ft_face.
12930 (xftfont_open): Don't keep locking face.
12931 (xftfont_close): Don't unlock face.
12932 (xftfont_anchor_point, xftfont_shape): Lock and unlock face.
12933
12934 * fontset.c (fontset_find_font): Don't prefer a font of
12935 supplementary charset.
12936
129372008-02-01 Kenichi Handa <handa@m17n.org>
12938
12939 * ftfont.c (struct OpenTypeSpec): Rename members script_tag to
12940 script, langsys_tag to langsys, new member script.
12941 (OTF_TAG_STR): Terminate by '\0'.
867d4bb3 12942 (ftfont_get_open_type_spec): If :otf prop is spec, limit the
aac0c6e3
MR
12943 listing to the script specified in that property. Fix arg to
12944 OTF_check_features.
12945
129462008-02-01 Jason Rumney <jasonr@gnu.org>
12947
12948 * w32font.h: New file.
12949
12950 * w32font.c: Include it.
12951 (struct w32font_info): Add owning_frame field. Move to w32font.h.
12952 (w32font_open): Set owning_frame.
12953 (w32font_text_extents): Use owning_frame.
12954 (struct font_callback_data): Add opentype_only field.
12955 (add_font_entity_to_list): Use it to filter fonts.
12956 Don't check against full name.
12957 (w32font_list_internal): New function.
12958 (w32font_list): Use it.
12959 (w32font_match_internal): New function.
12960 (w32font_match): Use it.
12961 (w32font_open_internal): New function.
12962 (w32font_open): Use it.
12963 (w32font_get_cache, w32font_close, w32font_has_char)
12964 (w32font_encode_char, w32font_text_extents, w32font_draw):
12965 Make non-static.
12966
12967 * makefile.w32-in (w32font.o): Depend on w32font.h.
12968
129692008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
12970
12971 * charset.c (Fdefine_charset_internal): Record a supplementary
12972 charset at the tail of Vcharset_order_list.
12973
12974 * font.c (Ffont_shape_text): Fix the return value.
12975
12976 * ftfont.c (OTF_SYM_TAG, OTF_TAG_STR): Fix argument names.
12977
12978 * xdisp.c (handle_auto_composed_prop): Fix previous change.
12979
129802008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
12981
12982 * ftfont.c (struct OpenTypeSpec): New struct.
12983 (OTF_SYM_TAG, OTF_TAG_STR): New macros.
12984 (ftfont_get_open_type_spec): New function.
12985 (ftfont_list) [HAVE_LIBOTF]: Check otf-spec property.
12986
12987 * lread.c (read1): Redo the previous change with checking Vpurify_flag.
12988
129892008-02-01 Jason Rumney <jasonr@gnu.org>
12990
12991 * w32font.c (add_font_entity_to_list): Compare only the beginning
12992 of full name.
12993
129942008-02-01 Kenichi Handa <handa@m17n.org>
12995
12996 * xdisp.c (handle_auto_composed_prop): Simplify the code.
12997 Never return HANDLED_RECOMPUTE_PROPS.
12998
129992008-02-01 Kenichi Handa <handa@m17n.org>
13000
13001 * font.c (font_gstring_produce): Delete it.
13002
13003 * composite.h (COMPOSITION_METHOD):
13004 Handle COMPOSITION_WITH_GLYPH_STRING.
13005
130062008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
13007
13008 * xfont.c (Qx): Delete.
13009 (syms_of_xfont): Don't initialize Qx.
13010
13011 * composite.h (enum composition_method):
13012 Define COMPOSITION_WITH_GLYPH_STRING unconditionally.
13013
130142008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
13015
13016 * xfaces.c [HAVE_WINDOW_SYSTEM]: Include "font.h" unconditionally.
13017 (choose_face_font): Accept new form of font-spec.
13018
13019 * frame.h (font_driver_list): Declare it unconditionally.
13020 (struct frame): Define members font_driver_list and font_data_list
13021 unconditionally.
13022
13023 * fontset.c: Include "font.h" unconditionally.
13024 (generate_ascii_font_name): Use font_parse_xlfd and font_unparse_xlfd.
13025 (Fset_fontset_font): Accept a font-spec object.
13026
13027 * font.c (font_unparse_xlfd): If pixel_size is zero, make the
13028 PIXEL_SIZE part a wild card.
13029
13030 * dispextern.h (struct glyph_string): Define members clip and
13031 num_clips unconditionally.
13032 (struct face): Define members font_info and extra unconditionally.
13033
13034 * ftfont.c (ftfont_open): Set members maybe_otf and otf of
13035 ftfont_info only when HAVE_LIBOTF is defined.
13036
130372008-02-01 Andreas Schwab <schwab@suse.de>
13038
13039 * xdisp.c (back_to_previous_visible_line_start): Fix type of beg
13040 and end.
13041
130422008-02-01 Jason Rumney <jasonr@gnu.org>
13043
13044 * w32font.c (w32font_driver): Add new fields.
13045
130462008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
13047
13048 * Makefile.in (ALL_CFLAGS): Add @M17N_FLT_CFLAGS@.
13049 (FONTSRC, FONTOBJ) [HAVE_WINDOW_SYSTEM]: Set them unconditionally.
13050 (LIBES): Add @M17N_FLT_CFLAGS@.
13051
13052 * composite.c (compose_text): Don't treat the new style
13053 composition specially.
13054
13055 * emacs.c (main): Call syms_of_font unconditionally.
13056
13057 * font.h (FONT_ENTITY_NOT_LOADABLE)
13058 (FONT_ENTITY_SET_NOT_LOADABLE): New macros.
13059 (LGSTRING_XXXX, LGLYPH_XXX): Adjust for the change of lispy gstring.
13060 (struct font_driver): New member shape.
13061 (font_registry_charsets): Extern it.
13062 (font_find_for_lface, font_prepare_composition): Adjust prototype.
13063 (font_otf_capability, font_drive_otf): Delete their externs.
13064
13065 * font.c [HAVE_M17N_FLT]: Include <m17n-flt.h>.
13066 (font_charset_alist, font_registry_charsets): Move from xfont.c
13067 and rename.
13068 (font_prop_validate_otf): New function.
13069 (font_property_table): Register it for QCotf.
13070 (DEVICE_DELTA, adjust_anchor, REPLACEMENT_CHARACTER)
13071 (font_drive_otf): Delete.
13072 (font_prepare_composition): New arg F. Adjust for the change of
13073 lispy gstring.
13074 (font_find_for_lface): New arg C.
13075 (font_load_for_face): Adjust for the change of font_find_for_lface.
13076 (Ffont_make_gstring, Ffont_fill_gstring): Adjust for the change of
13077 lispy gstring.
13078 (Ffont_shape_text): New function.
13079 (Fopen_font): If the font size is not given, use 12-pixel.
13080 (Ffont_at): New arg STRING.
13081 (syms_of_font): Initalize font_charset_alist.
13082 Declare Ffont_shape_text as a Lisp function. Call syms_of_XXfont
13083 conditionally.
13084
13085 * fontset.c (fontset_find_font) [USE_FONT_BACKEND]: Try multiple
13086 fonts of the same font-spec. Change the format of RFONT-DEF.
13087 (face_for_char, make_fontset_for_ascii_face, Finternal_char_font):
13088 Adjust for the change of RFONT-DEF.
13089 (Fset_fontset_font) [USE_FONT_BACKEND]: Handle new format of font-spec.
13090
13091 * ftfont.h: New file.
13092
13093 * ftfont.c: Don't include Freetype headers. Include "ftfont.h".
13094 (struct ftfont_info) [HAVE_LIBOTF]: New members maybe_otf and otf.
13095 (ftfont_open) [HAVE_LIBOTF]: Initialize the above members.
13096 (ftfont_driver) [HAVE_LIBOTF, HAVE_M17N_FLT]: Don't set
13097 font_otf_capability and font_drive_otf, set ftfont_shape.
13098 (ftfont_list): Adjust for the change of :otf property value.
13099 (struct MFLTFontFT) [HAVE_LIBOTF, HAVE_M17N_FLT]: New struct.
13100 (ftfont_get_glyph_id, ftfont_get_metrics, ftfont_check_otf)
13101 (adjust_anchor, ftfont_drive_otf, ftfont_shape_by_flt)
13102 (ftfont_shape) [HAVE_LIBOTF, HAVE_M17N_FLT]: New function.
13103 (DEVICE_DELTA) [HAVE_LIBOTF, HAVE_M17N_FLT]: New macro.
13104 (otf_gstring, gstring, m17n_flt_initialized): New variables.
13105
13106 * w32term.c (x_draw_composite_glyph_string_foreground):
13107 Adjust for the change of lispy gstring.
13108
13109 * xdisp.c (handle_composition_prop): Adjust for the change of
13110 lispy gstring. Call a function for auto-composition with the
13111 third arg it->window.
13112 (fill_composite_glyph_string): Adjust for the change of lispy string.
13113 (x_produce_glyphs): Adjust for the change of font_prepare_compositionl.
13114
13115 * xfaces.c (set_font_frame_param): Adjust for the change of
13116 font_find_for_lface.
13117
13118 * xfont.c (x_font_charset_alist): Move to font.c and rename.
13119 (xfont_registry_charsets): Likewise. Change caller.
13120 (syms_of_xfont): Don't handle x_font_charset_alist.
13121
13122 * xftfont.c: Include "ftfont.h".
13123 (struct xftfont_info) [HAVE_LIBOTF]: New members maybe_otf and otf.
13124 (xftfont_open) [HAVE_LIBOTF]: Initialize the above members.
13125 (xftfont_close) [HAVE_LIBOTF]: Close otf.
13126 (xftfont_shape) [HAVE_LIBOTF, HAVE_M17N_FLT]: New function.
13127 (syms_of_xftfont) [HAVE_LIBOTF, HAVE_M17N_FLT]:
13128 Set xftfont_driver.shape to xftfont_shape.
13129
13130 * xterm.c (x_draw_composite_glyph_string_foreground): Adjust for
13131 the change of lispy gstring.
13132
131332008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
13134
13135 * ftxfont.c (ftxfont_end_for_frame): Fix array indexing error.
13136
131372008-02-01 Jason Rumney <jasonr@gnu.org>
13138
13139 * w32font.c (w32font_draw): Fill background manually.
13140
131412008-02-01 Jason Rumney <jasonr@gnu.org>
13142
13143 * font.c (Qfontp): Remove unused symbol.
13144 (QCantialias): New symbol.
13145 (syms_of_font): Define it.
13146 (font_property_table): Set a validator for QCantialias.
13147
13148 * w32font.c (CLEARTYPE_QUALITY, CLEARTYPE_NATURAL_QUALITY):
13149 Define if not already.
13150 (QCfamily): Share with xfaces.c.
13151 (Qstandard, Qsubpixel, Qnatural): New symbols.
13152 (syms_of_w32font): Define them. Don't define QCfamily here.
13153 (w32_antialias_type, lispy_antialias_type): New functions.
13154 (w32_enumfont_pattern_entity): New arg requested_font.
13155 Set antialias parameter if non-default was requested.
13156 (fill_in_logfont): Fill in lfQuality if :antialias specified.
13157
131582008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
13159
13160 * lread.c (read1): Undo the previous change.
13161
131622008-02-01 CHENG Gao <chenggao@gmail.com> (tiny change)
13163
13164 * frame.c (Fdelete_frame): Call font_update_drivers only when
13165 USE_FONT_BACKEND is defined.
13166
131672008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
13168
13169 * font.h (struct font_bitmap): New member bits_per_pixel.
13170 (struct font_driver): New members start_for_frame and end_for_frame.
13171 (struct font_data_list): New struct.
13172 (font_put_frame_data, font_get_frame_data): Extern them.
13173
13174 * frame.h (struct frame): New member font_data_list.
13175
13176 * font.c (font_update_drivers): Call driver->start_for_frame and
13177 driver->end_for_frame at proper timings.
13178 (font_put_frame_data, font_get_frame_data): New functions.
13179 (Ffont_spec): Add usage in the docstring.
13180
13181 * frame.c (make_frame): Initialize f->font_data_list to NULL.
13182 (Fdelete_frame): Call font_update_drivers.
13183
13184 * xftfont.c (struct xftface_info): Delete the member xft_draw.
13185 (xftfont_prepare_face, xftfont_done_face): Adjust for the above change.
13186 (xftfont_get_xft_draw): New function.
13187 (xftfont_draw): Get XftDraw by xftfont_get_xft_draw.
13188 (xftfont_end_for_frame): New function.
13189 (syms_of_xftfont): Set xftfont_driver.end_for_frame.
13190
13191 * ftxfont.c (ftxfont_get_gcs): Rename from ftxfont_create_gcs.
13192 Change argument. Cache GCs in the per-frame data.
13193 (struct ftxfont_frame_data): New struct.
13194 (ftxfont_draw_bitmap): New arg gc_fore and flush.
13195 (ftxfont_prepare_face, ftxfont_done_face): Delete them.
13196 (ftxfont_draw): Get GCs by ftxfont_get_gcs. Reflect s->clip in GCs.
13197 (ftxfont_end_for_frame): New function.
13198 (syms_of_ftxfont): Set ftxfont_driver.end_for_frame.
13199
13200 * ftfont.c (ftfont_get_bitmap): Set bitmap->bits_per_pixel.
13201
132022008-02-01 Kenichi Handa <handa@m17n.org>
13203
13204 * xselect.c (Vselection_coding_system)
13205 (Vnext_selection_coding_system): Delete them.
13206 (syms_of_xselect): Don't declare selection-coding-system and
13207 next-selection-coding-system. They are declared in select.el.
13208
132092008-02-01 Jason Rumney <jasonr@gnu.org>
13210
13211 * w32term.h (WM_UNICHAR, UNICODE_NOCHAR): Define if not already.
13212
13213 * w32fns.c: Include imm.h.
13214 (get_composition_string_fn, get_ime_context_fn): New optional
13215 system functions.
13216 (globals_of_w32fns): Load them from imm32.dll.
13217 (ignore_ime_char): New flag.
13218 (w32_wnd_proc): Handle WM_UNICHAR, WM_IME_CHAR and
13219 WM_IME_ENDCOMPOSITION messages.
13220
13221 * w32term.c (w32_read_socket) [WM_UNICHAR]: Handle as
13222 MULTIBYTE_CHAR_KEYSTROKE_EVENT.
13223
132242008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
13225
13226 * lread.c (READCHAR): Call readchar with the 2nd arg NULL.
13227 (READCHAR_REPORT_MULTIBYTE): New macro.
13228 (readchar): New 2nd arg MULTIBYTE.
13229 (read1): Use READCHAR_REPORT_MULTIBYTE for the first read.
13230 Make symbol's name multibyte according to the multibyteness of the
13231 source.
13232
132332008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
13234
13235 * xfaces.c (face_for_overlay_string): Call lookup_face with
13236 correct arguments (fix of synching with the trunk).
13237
132382008-02-01 Kenichi Handa <handa@m17n.org>
13239
13240 * font.c (font_prop_validate_symbol, font_prop_validate_style)
13241 (font_prop_validate_non_neg, font_prop_validate_spacing):
13242 Delete argument prop_index.
13243 (font_property_table): Change arguments to validater. Change Callers.
13244 (font_lispy_object): Delete.
13245 (font_at): Use font_find_object instead fo font_lispy_object.
13246
132472008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
13248
13249 * fileio.c (Fexpand_file_name): Adjust multibyteness of directory
13250 and file names.
13251
132522008-02-01 Jason Rumney <jasonr@gnu.org>
13253
13254 * w32font.c (add_font_name_to_list): Avoid vertical fonts.
13255 (font_matches_spec): Remove debug output.
13256 (add_font_entity_to_list): Avoid using substituted fonts.
13257
132582008-02-01 Jason Rumney <jasonr@gnu.org>
13259
13260 * doc.c (Fsnarf_documentation):
13261 * Makefile.in (temacs${EXEEXT}, mostlyclean): Undo last change.
13262
132632008-02-01 Miles Bader <miles@gnu.org>
13264
13265 * dispextern.h (struct glyph_row): Only define "clip" field if
13266 HAVE_WINDOW_SYSTEM is defined.
13267
132682008-02-01 Stefan Monnier <monnier@iro.umontreal.ca>
13269
13270 Fix up multi-tty merge.
13271
13272 * xterm.c (handle_one_xevent): Remove duplicate code and fix up nesting
13273 and indentation.
13274
13275 * xfaces.c (free_realized_face, clear_face_gcs):
13276 Include font_done_for_face in the input_blocked section, just in case.
13277
13278 * xdisp.c (decode_mode_spec): Use terminal-local coding systems.
13279 (get_char_face_and_encoding): Undo last change and remove the *other*
13280 duplicate definition (i.e. keep the one that's better scoped and that
13281 includes code for the font-backend).
13282
13283 * terminal.c (create_terminal): Default keyboard_coding to
13284 `no-conversion' and terminal_coding to `undecided'.
13285
13286 * lread.c (read1): Use XSETPVECTYPE to set a pseudovector's tag.
13287
13288 * fontset.c (free_realized_fontsets): Check that the table entry does
13289 contain a fontset before trying to compare it to `base'.
13290
13291 * emacs.c (main): Move syms_of_data, syms_of_fileio, syms_of_alloc,
13292 syms_of_charset, and syms_of_coding earlier because init_window_once
13293 now needs Vcoding_system_hash_table to be setup.
13294
13295 * coding.h (default_buffer_file_coding): Remove.
13296
13297 * coding.c (default_buffer_file_coding): Remove.
13298 (Fterminal_coding_system, Fkeyboard_coding_system): Use ->id rather
13299 than ->symbol, and use the terminal-local coding system.
13300 (syms_of_coding): Don't setup the coding-systems that are not
13301 terminal-local.
13302 (Fdefine_coding_system_internal): Use XCAR/XCDR.
13303
13304 * chartab.c (Fmake_char_table, make_sub_char_table, copy_char_table):
13305 Use XSETPVECTYPE now that XSETCHAR_TABLE doesn't set the tag anymore.
13306
13307 * alloc.c (Fmake_char_table, make_sub_char_table): Remove. They're now
13308 in chartab.c and were re-added here by mistake.
13309 (Fpurecopy): Use XSETPVECTYPE after copying a COMPILED pseudovector.
13310
13311 * doc.c (Fsnarf_documentation):
13312 * Makefile.in (temacs${EXEEXT}, mostlyclean): Move buildobj.lst from
13313 src to etc.
13314
13315 * ChangeLog.10: Add mistakenly removed entry.
13316
133172008-02-01 Dan Nicolaescu <dann@ics.uci.edu>
13318
13319 * Makefile.in (fringe.o, minibuf.o): Fix dependencies.
13320
133212008-02-01 Miles Bader <miles@gnu.org>
13322
13323 * xdisp.c (get_char_face_and_encoding): Remove extraneous definition.
13324 Add extra args to FACE_FOR_CHAR.
13325
133262008-02-01 Kenichi Handa <handa@m17n.org>
13327
13328 * keymap.c (where_is_internal_1): If key is a cons, store the copy
13329 in sequence.
13330
13331 * chartab.c (map_sub_char_table, map_char_table): If the range
13332 contains just one character, call the function with that character
13333 even if the depth is not 3.
13334
133352008-02-01 Jason Rumney <jasonr@gnu.org>
13336
13337 * w32font.c (w32font_text_extents): Calculate metrics for the
13338 whole string.
13339
133402008-02-01 Jason Rumney <jasonr@gnu.org>
13341
13342 * w32xfns.c (get_next_msg): Consolidate WM_PAINT messages.
13343
133442008-02-01 Jason Rumney <jasonr@gnu.org>
13345
13346 * w32term.c (x_set_glyph_string_clipping): Use
13347 get_glyph_string_clip_rects.
13348 (x_set_glyph_string_clipping_exactly, x_draw_glyph_string):
13349 Adjust for the change of struct glyph_string.
13350
13351 * w32font.c (w32font_draw): Do clipping here.
13352
133532008-02-01 Kenichi Handa <handa@m17n.org>
13354
13355 * xftfont.c (xftfont_draw): Adjust for the change of struct
13356 glyph_string.
13357
13358 * xterm.c (x_set_glyph_string_clipping): Use
13359 get_glyph_string_clip_rects.
13360 (x_set_glyph_string_clipping_exactly, x_draw_glyph_string):
13361 Adjust for the change of struct glyph_string.
13362
13363 * xdisp.c (get_glyph_string_clip_rects): Reflect s->row->clip to
13364 the resulting clip(s}.
13365 (expose_overlaps): Add arg r. Change callers. Set it to
13366 row->clip temporarily.
13367 (expose_window): Redraw rows overlapping the exposed area.
13368
13369 * dispextern.h (struct glyph_row): New member clip.
13370 (struct glyph_string): Delete members clip_x, clip_y, clip_width,
13371 clip_height, new member clip, and num_clips.
13372
133732008-02-01 Kenichi Handa <handa@m17n.org>
13374
13375 * data.c (Fchar_or_string_p): Fix docstring.
13376
133772008-02-01 Kenichi Handa <handa@m17n.org>
13378
13379 * xftfont.c (xftfont_draw): If s->font_info != s->face->font_info,
13380 create a temporary XftDraw object.
13381
133822008-02-01 Kenichi Handa <handa@m17n.org>
13383
13384 * font.c (Ffontp): Fix docstring.
13385
13386 * coding.c (detect_coding_iso_2022): Don't treat SI/SO codes as a
13387 strong evidence of ISO-2022.
13388
133892008-02-01 Kenichi Handa <handa@m17n.org>
13390
13391 * abbrev.c (abbrev_check_chars): Use CHAR_TABLE_REF, not
13392 SYNTAX_ENTRY_FOLLOW_PARENT.
13393
133942008-02-01 Stefan Monnier <monnier@iro.umontreal.ca>
13395
13396 * fns.c (weak_hash_tables): Rename from Vweak_hash_tables and change
13397 its type.
13398 (make_hash_table, copy_hash_table, sweep_weak_hash_tables, init_fns):
13399 Update to the new type of weak_hash_tables and next_weak.
13400
13401 * lisp.h (struct Lisp_Hash_Table): Change next_weak from Lisp_Object to
13402 a plain C pointer to Lisp_Hash_Table.
13403
13404 * lisp.h (XGCTYPE, GC_HASH_TABLE_P, GC_NILP, GC_NUMBERP, GC_NATNUMP)
13405 (GC_INTEGERP, GC_SYMBOLP, GC_MISCP, GC_VECTORLIKEP, GC_STRINGP)
13406 (GC_CONSP, GC_FLOATP, GC_VECTORP, GC_OVERLAYP, GC_MARKERP)
13407 (GC_INTFWDP, GC_BOOLFWDP, GC_OBJFWDP, GC_BUFFER_OBJFWDP)
13408 (GC_BUFFER_LOCAL_VALUEP, GC_SOME_BUFFER_LOCAL_VALUEP)
13409 (GC_KBOARD_OBJFWDP, GC_PSEUDOVECTORP, GC_WINDOW_CONFIGURATIONP)
13410 (GC_PROCESSP, GC_WINDOWP, GC_SUBRP, GC_COMPILEDP, GC_BUFFERP)
13411 (GC_SUB_CHAR_TABLE_P, GC_CHAR_TABLE_P, GC_BOOL_VECTOR_P, GC_FRAMEP)
13412 (GC_EQ): Remove since they've been identical to their non-GC_
13413 alter-egos ever since the markbit was eradicated.
13414
13415 * alloc.c:
13416 * buffer.c:
13417 * buffer.h:
13418 * data.c:
13419 * fileio.c:
13420 * filelock.c:
13421 * fns.c:
13422 * frame.h:
13423 * lisp.h:
13424 * macterm.c:
13425 * print.c:
13426 * process.c:
13427 * w32fns.c:
13428 * w32menu.c:
13429 * w32term.c:
13430 * xfns.c:
13431 * xmenu.c:
13432 * xterm.c: Replace uses of GC_* macros with the non-GC_ versions.
13433
134342008-02-01 Kenichi Handa <handa@m17n.org>
13435
13436 * chartab.c (map_sub_char_table): Make it work for the top-level
13437 char-table. Fix handling of parent char-table.
13438 (map_char_table): Adjust for the above change.
13439
134402008-02-01 Jason Rumney <jasonr@gnu.org>
13441
13442 * w32font.c (Qgdi): Rename from Qw32.
13443
134442008-02-01 Jason Rumney <jasonr@gnu.org>
13445
13446 * w32bdf.c (get_quoted_string): Make function static.
13447
134482008-02-01 Kenichi Handa <handa@m17n.org>
13449
13450 * xftfont.c (xftfont_open): If one of font's ASCII glyph has
13451 bigger ascent and descent than those of the font, use them as
13452 font's ascent and descent.
13453
134542008-02-01 Kenichi Handa <handa@m17n.org>
13455
13456 * Makefile.in (${lispsource}international/charprop.el): Move this
13457 target within "#ifdef HAVE_UNIDATA" and "#endif".
13458
134592008-02-01 Kenichi Handa <handa@m17n.org>
13460
13461 * Makefile.in (lisp): Add ${lispsource}language/tai-viet.el.
13462 (shortlisp): Add ../lisp/language/tai-viet.el.
13463
134642008-02-01 Ulrich Mueller <ulm@gentoo.org>
13465
13466 * Makefile.in (${lispsource}international/charprop.el): Depend on
13467 temacs${EXEEXT}.
13468
134692008-02-01 Jason Rumney <jasonr@gnu.org>
13470
13471 * w32font.c (w32font_close): Delete the GDI font object.
13472
13473 * w32menu.c: Include character.h.
13474
13475 * w32proc.c: Likewise.
13476
13477 * w32select.c: Likewise.
13478
13479 * makefile.w32-in (w32proc.o): Depend on character.h.
13480
134812008-02-01 Jason Rumney <jasonr@gnu.org>
13482
13483 * w32fns.c (syms_of_w32fns): Use DEFSYM macro.
13484
13485 * w32menu.c (syms_of_w32menu): Likewise.
13486
13487 * w32proc.c (syms_of_ntproc): Likewise.
13488
13489 * w32select.c (syms_of_w32select): Likewise.
13490
13491 * w32term.c (syms_of_w32term): Likewise.
13492
134932008-02-01 Jason Rumney <jasonr@gnu.org>
13494
13495 * w32font.c (w32font_draw): Delete brush after using it.
13496
134972008-02-01 Jason Rumney <jasonr@gnu.org>
13498
13499 * w32font.c (w32font_open): Don't set font_idx.
13500 (w32font_text_extents): Try GetTextExtentPoint32W before defaulting
13501 to font settings.
13502 (w32font_draw): Fill background explicitly.
13503
135042008-02-01 Jason Rumney <jasonr@gnu.org>
13505
13506 * w32term.c (w32_initialize): Don't call w32font_initialize.
13507
13508 * w32font.c (w32font_info): Remove subranges.
13509 (QCsubranges, Qmodern, Qswiss, Qroman): Remove.
13510 (QCfamily, Qmonospace, Qsans_serif, Qmono, Qsans, Qsans__serif)
13511 (Qraster, Qoutline, Qlatin, Qgreek, Qcoptic, Qcyrillic, Qarmenian)
13512 (Qhebrew, Qarabic, Qsyriac, Qnko, Qthaana, Qdevanagari, Qbengali)
13513 (Qgurmukhi, Qgujarati, Qoriya, Qtamil, Qtelugu, Qkannada)
13514 (Qmalayalam, Qsinhala, Qthai, Qlao, Qtibetan, Qmyanmar, Qgeorgian)
13515 (Qhangul, Qethiopic, Qcherokee, Qcanadian_aboriginal, Qogham)
13516 (Qrunic, Qkhmer, Qmongolian, Qsymbol, Qbraille, Qhan)
13517 (Qideographic_description, Qcjk_misc, Qkana, Qbopomofo, Qkanbun)
13518 (Qyi, Qbyzantine_musical_symbol, Qmusical_symbol, Qmathematical):
13519 New symbols.
13520 (font_callback_data): New struct.
13521 (w32font_list, w32font_match): Use it.
13522 (w32font_open): Don't populate subranges.
13523 (w32font_has_char): Use script Lisp symbols, not subrange bitmask.
13524 (w32font_encode_char): Always return unicode code-point as-is.
13525 (w32font_text_extents): Supply a transformation matrix to
13526 GetGlyphOutline. Never look up by glyph index. Avoid looping
13527 twice. Use unicode version of GetTexExtentPoint32 instead of
13528 glyph index version.
13529 (set_fonts_frame): Remove.
13530 (w32_enumfont_pattern_entity): Add frame parameter, use it to
13531 set frame parameter. Use backward compatible fake foundries.
13532 Save generic family in extra slot under QCfamily. Make width slot
13533 constant. Save QCspacing value. Save list of scripts instead of
13534 binary subranges.
13535 (w32_generic_family, logfonts_match, font_matches_spec): New functions.
13536 (add_font_entity_to_list): Use font_callback_data struct. Filter
13537 unwanted fonts.
13538 (add_one_font_entity_to_list): Use font_callback_data struct.
13539 (w32_registry): Default to iso10646_1.
13540 (fill_in_logfont): Use dpi from extra slot. Don't bother with
13541 string font registries. Don't fill in font name if it is a generic
13542 family name, fill family instead. Use spacing, family and script
13543 extra info to fill pitch, family and charset fields.
13544 (list_all_matching_fonts): Use font_callback_data struct.
13545 (unicode_range_for_char): Remove.
13546 (font_supported_scripts): New function.
13547 (w32font_initialize): Remove.
13548 (syms_of_w32font): Update which symbols are defined.
13549
135502008-02-01 Jason Rumney <jasonr@gnu.org>
13551
13552 * font.c (font_pixel_size): Reverse assq_no_quit args.
13553
13554 * w32term.h (FONT_WIDTH): Report max width, not average.
13555 (FONT_MAX_WIDTH): Remove.
13556 (FONT_AVG_WIDTH): New macro.
13557
13558 * xfaces.c (Fx_list_fonts) [WINDOWSNT]: Remove Windows only
13559 redefinition of FONT_WIDTH.
13560
13561 * w32term.c (x_font_min_bounds): Use FONT_AVG_WIDTH.
13562 (w32_cache_char_metrics): Use FONT_WIDTH.
13563
13564 * w32fns.c (w32_load_system_font, w32_list_fonts): Use FONT_AVG_WIDTH.
13565
135662008-02-01 Jason Rumney <jasonr@gnu.org>
13567
13568 * w32font.c (w32font_open): Make lfHeight negative.
13569
13570 * w32fns.c (x_default_font_parameter): Use new style font name.
13571 (Fx_create_frame, x_create_tip_frame): Initialize resx and resy.
13572
135732008-02-01 Jason Rumney <jasonr@gnu.org>
13574
13575 * w32font.c (QCsubranges): New symbol.
13576 (w32font_open, w32font_has_char): Get subranges from subproperty
13577 of extra.
13578 (w32_enumfont_pattern_entity): Set subranges as subproperty of extra.
13579 (syms_of_w32font): Define :subranges symbol.
13580
13581 * font.c (font_put_extra): Expose externally.
13582
13583 * font.h (font_put_extra): Move declaration from font.c.
13584
13585 * font.c (Ffont_get): Use font driver to determine otf capability.
13586 (adjust_anchor): Check if driver defines anchor_point before using.
13587
13588 * w32font.c (w32font_open): Handle size, height and pixel_size better.
13589 (w32font_draw): Use options.
13590 (w32_enumfont_pattern_entity): Set size to 0 for scalable fonts.
13591 Fix detection of truetype fonts.
13592 (registry_to_w32_charset): Handle charsets other than iso8859-1
13593 expressed as lisp symbols.
13594 (w32_registry): Express charset as lisp symbol.
13595 (fill_in_logfont): Reverse pixel and point height logic.
13596 Don't set width here. Set quality to default.
13597
13598 * w32fns.c (w32_load_system_font): Fix detecting FIXED_PITCH fonts.
13599 (x_to_w32_font): Fill in lfPitchAndFamily correctly.
13600
13601 * xterm.c (x_draw_glyph_string_foreground) [USE_FONT_BACKEND]:
13602 Remove redundant loop and allocation.
13603
13604 * makefile.w32-in (font.o, w32font.o): New objects.
13605 (fontset.o, xdisp.o, xfaces.o, w32fns.o, w32term.o): Depend on font.h.
13606 (FONTOBJ): New group of objects conditioned on USE_FONT_BACKEND.
13607
13608 * xdisp.c (fill_composite_glyph_string): Make the first arg to
13609 STORE_XCHARB a valid l-value.
13610
13611 * w32term.c (w32_native_per_char_metric): Swap width and rbearing
13612 calculations for non-Truetype fonts.
13613 (x_draw_glyph_string): Sync with xterm.c.
13614 (x_draw_glyph_string_foreground) [USE_FONT_BACKEND]:
13615 Remove redundant code.
13616 (w32_initialize) [USE_FONT_BACKEND]: Call w32font_initialize.
13617
13618 * w32term.h (w32_output_data) [USE_FONT_BACKEND]: Add fontp member.
13619 (FRAME_FONT_OBJECT) [USE_FONT_BACKEND]: New macro from xterm.h.
13620
13621 * w32fns.c [USE_FONT_BACKEND]: Port font backend changes from xfns.c.
13622 (x_to_w32_charset, w32_to_x_charset): Expose externally.
13623
13624 * w32font.c: New file for w32 font backend.
13625
136262008-02-01 Kenichi Handa <handa@m17n.org>
13627
13628 * term.c: Don't include "buffer.h" twice.
13629
136302008-02-01 Kenichi Handa <handa@m17n.org>
13631
13632 * character.c (Funibyte_string): New function.
13633 (syms_of_character): Defsubr it.
13634
136352008-02-01 Jason Rumney <jasonr@gnu.org>
13636
13637 * w32term.c [USE_FONT_BACKEND]:
13638 (x_get_font_repertory, note_mouse_movement, x_set_mouse_face_gc)
13639 (x_set_glyph_string_clipping, x_set_glyph_string_clipping_exactly)
13640 (x_draw_glyph_string, x_draw_glyph_string_foreground)
13641 (x_draw_composite_glyph_string_foreground, x_new_fontset2)
13642 (x_free_frame_resources): Sync with xterm.c.
13643
136442008-02-01 Andreas Schwab <schwab@suse.de>
13645
13646 * lread.c (read1): Use CHAR_TABLE_STANDARD_SLOTS to validate
13647 char-table size.
13648
136492008-02-01 Kenichi Handa <handa@m17n.org>
13650
13651 * font.c (check_otf_features): Define it regardless of HAVE_LIBOTF.
13652
136532008-02-01 Kenichi Handa <handa@m17n.org>
13654
13655 * ftfont.c (ftfont_driver): Delete font_otf_gsub and
13656 font_otf_gpos, add font_drive_otf.
13657
13658 * fontset.c (fontset_find_font): Pay attention to font size
13659 specified for a font.
13660 (reorder_font_vector): Check contents of font_def.
13661
13662 * font.c (struct otf_list): Delete it.
13663 (otf_list): Make it a lisp variable.
13664 (otf_open): Use lispy otf_list.
13665 (generate_otf_features): Rename from parse_gsub_gpos_spec.
13666 (check_otf_features): New function.
13667 (font_otf_DeviceTable, font_otf_ValueRecord, font_otf_Anchor):
13668 New functions.
13669 (font_drive_otf): New function merging font_otf_gsub and
13670 font_otf_gpos.
13671 (font_open_for_lface): New arg spec. Change argument order.
13672 (font_load_for_face): Adjust for the change of font_open_for_lface.
13673 (Ffont_drive_otf): New function merging Ffont_otf_gsub and
13674 Ffont_otf_gpos.
13675 (syms_of_font): Staticpro otf_list. Delete defsubr of
13676 Sfont_otf_gsub and Sfont_otf_gpos. Defsubr Sfont_drive_otf.
13677
13678 * xfaces.c (set_font_frame_param): Adjust for the change of
13679 font_open_for_lface.
13680
13681 * font.h (font_open_for_lface): Adjust prototype.
13682 (struct font_driver): Delete members otf_gsub and otf_gpos, add
13683 member otf_drive.
13684 (font_otf_gsub, font_otf_gpos): Delete externs.
13685 (font_drive_otf): Extern it.
13686
136872008-02-01 Kenichi Handa <handa@m17n.org>
13688
13689 * font.c (font_at): If the window W is not on a window system,
13690 return Qnil.
13691
13692 * coding.c (produce_chars, encode_coding): Don't call
13693 insert_from_gap if no characters to produce.
13694
136952008-02-01 Kenichi Handa <handa@m17n.org>
13696
13697 * fontset.c (free_realized_fontsets): Avoid unnecessary call of
13698 Fclear_face_cache.
13699
13700 * xfaces.c (face_for_font): Check also face->font==font->font.font.
13701
137022008-02-01 Miles Bader <miles@gnu.org>
13703
13704 * emacs.c (main): Change default value of `enable_font_backend' to 1.
13705 Parse "--disable-font-backend" option.
13706 (standard_args): Add "--disable-font-backend" option.
13707
137082008-02-01 Kenichi Handa <handa@m17n.org>
13709
13710 * fontset.c (fontset_find_font): New function.
13711 (fontset_font): Use fontset_find_font.
13712 (make_fontset_for_ascii_face): Don't set face ID in rfont_def.
13713 Register the specified font for all Latin characters.
13714 (new_fontset_from_font): Register the specified font for all Latin
13715 characters.
13716 (dump_fontset): For a realized fontset, include the base fontset
13717 name in the returned vector.
13718
137192008-02-01 Kenichi Handa <handa@m17n.org>
13720
13721 * character.h (CHAR_STRING): Cast C to unsigned on calling
13722 char_string.
13723
13724 * character.c (char_string): Type of arg C changed to unsigned.
13725 Signal an error if C is an invalid character code.
13726
13727 * editfns.c (general_insert_function, Fchar_to_string):
13728 Use CHARACTERP, not INTEGERP.
13729
137302008-02-01 Kenichi Handa <handa@m17n.org>
13731
13732 * character.h (MIN_MULTIBYTE_LEADING_CODE)
13733 (MAX_MULTIBYTE_LEADING_CODE): New macros.
13734
13735 * regex.c (analyse_first): Fix for multibyte characters in "case
13736 charset:" and "case categoryspec:".
13737
137382008-02-01 Andreas Schwab <schwab@suse.de>
13739
13740 * Makefile.in (LIBES): Move standard libraries to the end.
13741
137422008-02-01 Kenichi Handa <handa@m17n.org>
13743
13744 * alloc.c (Fgarbage_collect): If nextb->text->inhibit_shrinking is
13745 nonzero, don't shrink the buffer nextb.
13746
13747 * buffer.h (struct buffer_text): New member inhibit_shrinking.
13748
13749 * coding.c (coding_alloc_by_making_gap): New arg offset.
13750 (alloc_destination): Call coding_alloc_by_making_gap with the arg
13751 offset.
13752 (decode_coding_iso_2022): Update coding->safe_charsets.
13753 (decode_coding_gap): Temporarily set
13754 current_buffer->text->inhibit_shrinking to 1.
13755
137562008-02-01 Kenichi Handa <handa@m17n.org>
13757
13758 * xterm.c (x_draw_composite_glyph_string_foreground): Fix
13759 indexing into elements of s->cmp and s->char2b.
13760
137612008-02-01 Juanma Barranquero <lekktu@gmail.com>
13762
13763 * regex.c (RE_STRING_CHAR_AND_LENGTH) [! emacs]: Add missing arg `len'.
13764
137652008-02-01 Kenichi Handa <handa@m17n.org>
13766
13767 * regex.c (GET_CHAR_BEFORE_2, GET_CHAR_AFTER): Check the variable
13768 target_multibyte instead of multibyte.
13769 (re_match_2_internal): Call bcmp_translate with target_multibyte.
13770 (bcmp_translate): Change the argument name from multibyte to
13771 target_multibyte.
13772
137732008-02-01 Kenichi Handa <handa@m17n.org>
13774
13775 These changes are to compile a regexp into a pattern that can be
13776 used both for multibyte and unibyte targets.
13777
13778 * Makefile.in (search.o): Depend on charset.h.
13779
13780 * character.c (multibyte_char_to_unibyte_safe): New function.
13781
13782 * search.c: Include "charset.h".
13783 (compile_pattern_1): Delete argument multibyte. Don't set
13784 cp->buf.target_multibyte here. Set cp->buf.charset_unibyte.
13785 (compile_pattern): Don't compare cp->buf.target_multibyte.
13786 Compare cp->buf.charset_unibyte.
13787 (compile_pattern): Set cp->buf.target_multibyte.
13788
13789 * lisp.h (multibyte_char_to_unibyte_safe): Extern it.
13790
13791 * regex.h (struct re_pattern_buffer): New member charset_unibyte.
13792
13793 * regex.c (RE_STRING_CHAR, RE_STRING_CHAR_AND_LENGTH): New arg
13794 multibyte. Change callers.
13795 (RE_CHAR_TO_MULTIBYTE, RE_CHAR_TO_UNIBYTE): New macros.
13796 (MAKE_CHAR_MULTIBYTE, MAKE_CHAR_UNIBYTE): Delete. Change callers
13797 to use RE_CHAR_TO_MULTIBYTE and RE_CHAR_TO_UNIBYTE, respectively.
13798 (SETUP_ASCII_RANGE, SETUP_UNIBYTE_RANGE): New macros.
13799 (SETUP_MULTIBYTE_RANGE): Generate a more compact range_table.
13800 (regex_compile): Make the compiled pattern usable both for
13801 multibyte and unibyte targets.
13802 (analyse_first): Make the fastmap usable both for multibyte and
13803 unibyte targets.
13804 (TRANSLATE_VIA_MULTIBYTE): Delete.
13805 (re_match_2_internal): Pay attention to the case that the
13806 multibyteness of bufp and target may be different.
13807
138082008-02-01 Kenichi Handa <handa@m17n.org>
13809
13810 * xdisp.c (x_produce_glyphs): When a font is not found, make the
13811 empty box occupy at least one column width.
13812
138132008-02-01 Miles Bader <miles@gnu.org>
13814
13815 * Makefile.in: Remove redundant HAVE_XFT clause.
13816
138172008-02-01 Kenichi Handa <handa@m17n.org>
13818
13819 * xrdb.c (x_load_resources): Setup the default fontSet X resource.
13820
138212008-02-01 Kenichi Handa <handa@m17n.org>
13822
13823 * fontset.c (Finternal_char_font): Fix for the case of POSITION
13824 being nil.
13825
138262008-02-01 Kenichi Handa <handa@m17n.org>
13827
13828 * xftfont.c (xftfont_open): Call FcConfigSubstitute.
13829
138302008-02-01 Kenichi Handa <handa@m17n.org>
13831
13832 * xftfont.c (xftfont_open): Don't enable antialias explicitly.
13833
138342008-02-01 Kenichi Handa <handa@m17n.org>
13835
13836 * search.c (simple_search): Fix previous change.
13837
138382008-02-01 Kenichi Handa <handa@m17n.org>
13839
13840 * xftfont.c (ftfont_font_format): Extern declaration.
13841
13842 * frame.c (x_set_font): Fix the second arg to fs_query_fontset.
13843
13844 * xfont.c (xfont_driver): Initialize ftfont_driver.type by 0.
13845 (xfont_list): Don't directly use Lisp_Object as an operand of &&.
13846
13847 * ftfont.c (ftfont_driver): Initialize ftfont_driver.type by 0.
13848 (ftfont_font_format): Fix previous change.
13849
13850 * font.h (Ffont_xlfd_name): EXFUN it.
13851
13852 * font.c (font_parse_xlfd): Fix the array size of `f'.
13853 (register_font_driver): Use EQ to compare driver->type.
13854
13855 * xfns.c (xic_create_xfontset2) [USE_FONT_BACKEND]: New function.
13856 (create_frame_xic) [USE_FONT_BACKEND]: Call xic_create_xfontset2.
13857 (xic_set_xfontset) [USE_FONT_BACKEND]: Likewise.
13858
138592008-02-01 Kenichi Handa <handa@m17n.org>
13860
13861 * ftfont.c (ftfont_pattern_entity, ftfont_list_generic_family)
13862 (ftfont_list, ftfont_font_format): Check if FC_FONTFORMAT is defined.
13863
138642008-02-01 Kenichi Handa <handa@m17n.org>
13865
13866 * xfont.c (xfont_open): Set font->format.
13867
13868 * xftfont.c (xftfont_open): Set font->format.
13869
13870 * ftfont.c (ftfont_pattern_entity): Add fontformat in a pattern.
13871 (ftfont_list): Include FC_FONTFORMAT in FcObject.
13872 (ftfont_open): Set font->format.
13873 (ftfont_font_format): New function.
13874
13875 * font.h (struct font): New member format.
13876
13877 * font.c (Qopentype): New variable.
13878 (syms_of_font): Defsym it.
13879 (Fquery_font): Change the format of the last element of the return
13880 value.
13881
138822008-02-01 Kenichi Handa <handa@m17n.org>
13883
13884 * xfns.c (xic_create_xfontset): Try the default fontset name as a
13885 last resort.
13886
138872008-02-01 Kenichi Handa <handa@m17n.org>
13888
13889 * coding.c (detect_coding_charset): Fix detection of multi-byte
13890 charset.
13891
138922008-02-01 Bob Halley <halley@play-bow.org> (tiny change)
13893
13894 * ccl.c (ccl_driver): If DST is NULL, set ccl->produced to 0.
13895
138962008-02-01 Kenichi Handa <handa@m17n.org>
13897
13898 * xdisp.c (get_next_display_element): Set it->face_id for the
13899 first component of a composition.
13900 (x_produce_glyphs): Check if the font is changed or not for composition.
13901
139022008-02-01 Kenichi Handa <handa@m17n.org>
13903
13904 * fontset.c (Qlatin): New variable.
13905 (syms_of_fontset): Define it as a lisp symbol.
13906 (Fset_fontset_font): If TARGET is `latin', use FONT_SPEC for ASCII.
13907
139082008-02-01 Kenichi Handa <handa@m17n.org>
13909
13910 * font.c (font_unparse_fcname): Pay attention to the case that
13911 some of font property is a null string.
13912
139132008-02-01 Kenichi Handa <handa@m17n.org>
13914
13915 * term.c: Include "composite.h".
13916 (encode_terminal_code): Output all components of composition.
13917 Check the size of encode_terminal_src.
13918 (produce_glyphs): For composition, call produce_composite_glyph.
13919 (append_composite_glyph, produce_composite_glyph): New functions.
13920
13921 * xdisp.c (x_produce_glyphs): In handling composition, if a font
13922 is not found, get font_info from the current ascii face.
13923
139242008-02-01 Kenichi Handa <handa@m17n.org>
13925
13926 * fileio.c (Finsert_file_contents): On replacing, temporarily bind
13927 buffer-file-name to Qnil before calling insert_from_buffer.
13928
13929 * font.c (font_unparse_fcname): Pay attention to the case that
13930 foundry is a null string.
13931
139322008-02-01 Kenichi Handa <handa@m17n.org>
13933
13934 * ftfont.c (ftfont_list): Allow registry "unicode-sip".
13935
13936 * font.c (Qunicode_sip): New variable.
13937 (syms_of_font): Declare it as a Lisp symbol.
13938
13939 * font.h (Qunicode_sip): Extern it.
13940
139412008-02-01 Kenichi Handa <handa@m17n.org>
13942
13943 * composite.c (get_composition_id): Pay attention to TAB component.
13944
13945 * xterm.c (x_draw_composite_glyph_string_foreground): Don't draw
13946 TAB. Adjust for the change of s->char2b which always points to
13947 the first element of allocated memory.
13948
13949 * xftfont.c (xftfont_text_extents): Fix calculation of descent value.
13950
13951 * xdisp.c (handle_composition_prop): Set it->c to the first
13952 non-TAB component.
13953 (fill_composite_glyph_string): Change argument.
13954 (BUILD_COMPOSITE_GLYPH_STRING): Adjust for the above change.
13955 (x_produce_glyphs): Fix handling of left/right padding.
13956
139572008-02-01 Kenichi Handa <handa@m17n.org>
13958
13959 * coding.c (detect_coding_system): Fix for handling off
13960 inhibit_iso_escape_detection. Fix for the case that no coding
13961 system is defined for a specific coding category.
13962
139632008-02-01 Kenichi Handa <handa@m17n.org>
13964
13965 * font.c (font_matching_entity): Delete unused local var.
13966
13967 * xftfont.c (xftfont_open): Call XftDefaultSubstitute before
13968 opening a font.
13969
13970 * fileio.c (Finsert_file_contents): On recovering a file, assume
13971 Unix-like eol.
13972 (choose_write_coding_system): On auto-saving a file, force
13973 Unix-like eol.
13974
13975 * coding.c (setup_coding_system): Fix setting of
13976 coding->common_flags based on eol_type.
13977 (coding_inherit_eol_type): If PARENT is not nil, be sure to
13978 inherit from it.
13979
139802008-02-01 Kenichi Handa <handa@m17n.org>
13981
13982 * alloc.c (NSTATICS): Increas to 0x600.
13983
139842008-02-01 Kenichi Handa <handa@m17n.org>
13985
13986 * ftfont.c (ftfont_driver): Set ftfont_driver.match to ftfont_match.
13987 (ftfont_list): Don't check :name property.
13988 (ftfont_match): New function.
13989 (ftfont_pattern_entity): If the pattern doesn't contain
13990 FC_SPACING, don't assume FC_MONO.
13991
13992 * font.h (struct font_driver): New member `match'.
13993 (font_update_drivers): Adjust prototype.
13994
13995 * font.c (font_parse_fcname, font_parse_name): Don't change :name
13996 property of FONT.
13997 (LGSTRING_HEADER_SIZE, LGSTRING_GLYPH_SIZE, check_gstring): Define
13998 them unconditionally.
13999 (font_matching_entity): New function.
14000 (font_open_by_name): Try font_matching_entity if exact match is
14001 not found.
14002 (font_update_drivers): Delete the arg FONT. Return a list of
14003 actually used backends. Don't free faces, font caches here.
14004 Don't store data in frame parameters. Don't call x_set_font.
14005 (Ffont_spec): Store :name property as is.
14006 (Ffont_get): Check HAVE_LIBOTF before calling font_otf_capability.
14007 (Ffont_otf_gsub): Call font->driver->otf_gsub instead of font_otf_gsub.
14008 (Ffont_otf_gpos): Call font->driver->otf_gpos instead of font_otf_gpos.
14009 (Ffont_otf_alternates): Check if the driver has otf_gsub function.
14010 Call font->driver->otf_gsub instead of font_otf_gsub.
14011
14012 * frame.c (x_set_font_backend): Do more works that were done in
14013 font_update_drivers before.
14014
14015 * xfont.c (xfont_match): New function.
14016 (xfont_driver): Set xfont_driver.match to xfont_match.
14017 (xfont_draw): Set font in GC if necessary.
14018
14019 * ftxfont.c (ftxfont_match): New function.
14020 (syms_of_ftxfont): Set ftxfont_driver.match to ftxfont_match.
14021
14022 * xftfont.c (xftfont_match): New function.
14023 (syms_of_xftfont): Set xftfont_driver.match to xftfont_match.
14024
140252008-02-01 Kenichi Handa <handa@m17n.org>
14026
14027 * font.h (struct font): New member scalable.
14028 (struct font_driver): New arg ALTERANTE_SUBST to otf_gsub.
14029 (font_otf_gsub): Adjust prototype.
14030
14031 * font.c (font_otf_capability): Fix handling of the default langsys.
14032 (parse_gsub_gpos_spec): Change type to void. New arg nbytes.
14033 Check the contents of SPEC.
14034 (LGSTRING_HEADER_SIZE, LGSTRING_GLYPH_SIZE): New macros.
14035 (check_gstring): New function.
14036 (REPLACEMENT_CHARACTER): New macro.
14037 (font_otf_gsub): New arg alternate_subst. Be sure to set all
14038 glyph codes of GSTRING.
14039 (font_otf_gpos): Be sure to set all glyph codes of GSTRING.
14040 (font_prepare_composition): Set cmp->glyph_len.
14041 (font_open_entity): Set font->scalable.
14042 (Ffont_get): Handle :otf property.
14043 (Ffont_otf_gsub, Ffont_otf_gpos, Ffont_otf_alternates): New
14044 functions.
14045 (Fquery_font): Use font->font.full_name.
14046 (syms_of_font): Defsubr Sfont_otf_gsub, Sfont_otf_gpos, and
14047 Sfont_otf_alternates.
14048
14049 * ftfont.c (ftfont_open): Set font->font.full_name and
14050 font->font.name properly. Fix calculation of font->font.height
14051 and font->min_width.
14052
14053 * ftxfont.c (ftxfont_create_gcs): New function.
14054 (ftxfont_draw_bitmap): Fix arg to ftfont_driver.get_bitmap.
14055 (ftxfont_draw_backgrond): Fix filling region.
14056 (ftxfont_default_fid): New function.
14057 (ftxfont_open): Set xfont->fid to the return value of
14058 ftxfont_default_fid.
14059 (ftxfont_prepare_face): Use ftxfont_create_gcs to create GCs.
14060 (ftxfont_done_face): Free only GCs that are created by
14061 ftxfont_create_gcs.
14062 (ftxfont_draw): If face->gc != s->gc, create proper GCs.
14063
14064 * xterm.c (x_set_glyph_string_clipping_exactly) [USE_FONT_BACKEND]:
14065 Clip to src->width, etc (not src->clip_XXX).
14066
14067 * xfns.c (x_create_tip_frame) [USE_FONT_BACKEND]: Handle
14068 FontBackend frame parameter.
14069
140702008-02-01 Kenichi Handa <handa@m17n.org>
14071
14072 * font.h (struct font_driver_list): New member `on'.
14073 (Fclear_font_cache): EXFUN it.
14074 (font_update_drivers): Extern it.
14075
14076 * font.c (font_unparse_fcname): Fix typo (swidth->width).
14077 (font_list_entities): Check driver_list->on.
14078 (register_font_driver): Initalize `on' member to 0.
14079 (font_update_drivers): New function.
14080 (Fclear_font_cache): Check driver_list->on.
14081
14082 * frame.h (Qfont_backend): Extern it.
14083 (x_set_font_backend): Extern it.
14084
14085 * frame.c (Qfont_backend): New variable.
14086 (frame_parms): New element for font-backend.
14087 (x_set_font_backend): New function.
14088
14089 * xfns.c (Fx_create_frame) [USE_FONT_BACKEND]: Handle
14090 FontBackend frame parameter.
14091 (x_frame_parm_handlers) [USE_FONT_BACKEND]: New element
14092 x_set_font_backend.
14093
14094 * xfont.c (xfont_list): Don't try listing by :name property if the
14095 name is not for XLFD.
14096
140972008-02-01 Kenichi Handa <handa@m17n.org>
14098
14099 * font.h (LGLYPH_FROM, LGLYPH_TO, LGLYPH_SET_FROM)
14100 (LGLYPH_SET_TO): New macros.
14101 (LGLYPH_XOFF, LGLYPH_YOFF, LGLYPH_WADJUST): Check if adjustment
14102 element of G is vector or not.
14103 (font_at): Extern it.
14104
14105 * font.c: Include window.h.
14106 (font_lispy_object): New function.
14107 (font_prepare_composition): Check LGLYPH_FORM (g) to detect the
14108 end of valid glyph.
14109 (font_close_object): Fix getting (struct font *).
14110 (font_at): New function.
14111 (Ffont_get): If FONT is a font-object, get entity from it.
14112 (Ffont_make_gstring): Initialize elements of glyphs with nil.
14113 (Ffont_fill_gstring): Use macro LGSTRING_XXX and LGLYPH_XXX. Fix
14114 range check.
14115 (Ffont_at): New function.
14116 (syms_of_font): Defsubr Sfont_at.
14117
14118 * xdisp.c (it_props): Move the entry for Qauto_composed to just
14119 before the entry for Qcomposition.
14120 (handle_auto_composed_prop): Call auto-composition-function with 4 args.
14121 (handle_composition_prop) [USE_FONT_BACKEND]: Set it->face_id from
14122 the font in gstring.
14123 (fill_composite_glyph_string) [USE_FONT_BACKEND]: Check
14124 LGLYPH_FORM (g) to detect the end of valid glyph.
14125 (x_produce_glyphs) [USE_FONT_BACKEND]: Don't update it->face_id if
14126 we are composing with gstring.
14127
14128 * xterm.c (x_draw_composite_glyph_string_foreground) [USE_FONT_BACKEND]:
14129 Check if adjustment is vector or not.
14130
14131 * Makefile.in (font.o): Make it depends on window.h.
14132
141332008-02-01 Kenichi Handa <handa@m17n.org>
14134
14135 * xterm.c (x_draw_composite_glyph_string_foreground): Check if
14136 adjustment is vector or not.
14137
141382008-02-01 Miles Bader <miles@gnu.org>
14139
14140 * character.h (CHECK_CHARACTER): Redefine in terms of CHECK_TYPE.
14141
141422008-02-01 Kenichi Handa <handa@m17n.org>
14143
14144 * font.h (LGLYPH_XOFF, LGLYPH_YOFF, LGLYPH_WIDTH, LGLYPH_WADJUST)
14145 (LGLYPH_SET_WIDTH): Adjusted for the change of LGLYPH format.
14146 (LGLYPH_ADJUSTMENT, LGLYPH_SET_ADJUSTMENT): New macros.
14147
14148 * font.c (font_merge_old_spec): Treat '*' in foundry as a wild card.
14149 (DEVICE_DELTA): Fix typo.
14150 (font_otf_gpos, font_prepare_compositio): Adjust for the change of
14151 LGLYPH format.
14152
14153 * xterm.c (x_draw_composite_glyph_string_foreground): Adjust for
14154 the change of LGLYPH format.
14155
141562008-02-01 Kenichi Handa <handa@m17n.org>
14157
14158 * ftfont.c (ftfont_list): Fix typo.
14159 (ftfont_build_basic_charsets): Don't include letters with diacritics.
14160
141612008-02-01 Jan Djärv <jan.h.d@swipnet.se>
14162
14163 * xfaces.c (realize_non_ascii_face): Set face->extra to NULL.
14164
14165 * xftfont.c (xftfont_done_face): Call XftDrawDestroy only if
14166 xftface_info is non-NULL.
14167
141682008-02-01 Jan Djärv <jan.h.d@swipnet.se>
14169
14170 * ftfont.c (ftfont_list): Move misplaced #endif.
14171
141722008-02-01 Kenichi Handa <handa@m17n.org>
14173
14174 * ftfont.c (ftfont_list): Pay attention to the case that
14175 FC_CAPABILITY is not defined.
14176
141772008-02-01 Kenichi Handa <handa@m17n.org>
14178
14179 * xftfont.c (xftfont_open): Set charset related members to -1.
14180
14181 * ftfont.c (ftfont_list): Handle QCotf property. Fix handling of
14182 QCname.
14183 (ftfont_open): Set charset related members to -1.
14184
14185 * fontset.c (Votf_script_alist): New variable.
14186 (syms_of_fontset): Initialize it.
14187 (fontset_font): Delete unused variable.
14188
14189 * fontset.h (Votf_script_alist): Extern it.
14190
14191 * font.c (font_find_for_lface): Optimize code.
14192
14193 * font.h (font_close_object, font_merge_old_spec): Extern them.
14194
141952008-02-01 Kenichi Handa <handa@m17n.org>
14196
14197 * font.c (QCscalable, Qc, Qm, Qp, Qd): New variables.
14198 (syms_of_font): Initialize them.
14199 (font_pixel_size): Allow float value in dpi.
14200 (font_prop_validate_type): Delete.
14201 (font_prop_validate_symbol, font_prop_validate_style): Change argument.
14202 Change caller.
14203 (font_prop_validate_non_neg): Rename from font_prop_validate_size.
14204 (font_prop_validate_extra): Delete.
14205 (font_prop_validate_spacing): New function.
14206 (font_property_table): Add elements for all known properties.
14207 (get_font_prop_index): Rename from check_font_prop_name. New
14208 argument FROM. Change caller.
14209 (font_prop_validate): Validate all known properties.
14210 (font_put_extra): Delete argument force. Change caller.
14211 (font_expand_wildcards): Make it static. Fix the way of shrinking
14212 the possible range.
14213 (font_parse_xlfd): Delete argument merge. Fix handling of RESX,
14214 RESY, SPACING, and AVGWIDTH. Don't validate property values here.
14215 Change caller.
14216 (font_unparse_xlfd): Handle dpi, spacing, and scalable properties.
14217 (font_parse_fcname): Delete argument merge. Fix parsing of point
14218 size. Don't validate properties values here. Change caller.
14219 (font_unparse_fcname): Handle dpi, spacing, and scalable properties.
14220 (font_open_by_name): Delete unused variable.
14221 (Ffont_spec): Likewise. Validate property values.
14222 (Ffont_match_p): New function.
14223
14224 * font.h (QCscalable): Extern it.
14225 (font_parse_xlfd, font_parse_fcname): Adjust prototype.
14226
14227 * ftfont.c (ftfont_list): Handle properties dpi, spacing, and scalable.
14228
14229 * xfont.c (xfont_query_font): Adjust for the change of font_parse_xlfd.
14230 (xfont_list_pattern): New function.
14231 (xfont_list): Use xfont_list_pattern.
14232
142332008-02-01 Kenichi Handa <handa@m17n.org>
14234
14235 * font.h (Flist_fonts): EXFUN it.
14236
142372008-02-01 Jason Rumney <jasonr@gnu.org>
14238
14239 * w32term.c (w32_initialize): Add back smoothing_type and
14240 smoothing_enabled definitions.
14241
142422008-02-01 Kenichi Handa <handa@m17n.org>
14243
14244 * xterm.c (x_draw_glyph_string) [USE_FONT_BACKEND]: Check
14245 s->face->font on determining underline position.
14246
142472008-02-01 Kenichi Handa <handa@m17n.org>
14248
14249 * font.c (font_parse_xlfd): Fix generating of CHARSET_REGISTRY field.
14250 (font_has_char): Accept font-object too.
14251 (font_find_for_lface): Try at first with a size specified in face.
14252
142532008-02-01 Kenichi Handa <handa@m17n.org>
14254
14255 * frame.c (x_set_font) [USE_FONT_BACKEND]: Fix argument to
14256 font_open_by_name.
14257
142582008-02-01 Kenichi Handa <handa@m17n.org>
14259
14260 * font.h (QCspacing, QCdpi): Extern them.
14261 (enum font_spacing): New enum.
14262 (FONT_PIXEL_SIZE_QUANTUM): New macro.
14263
14264 * font.c (POINT_TO_PIXEL): Don't divide POINT by 10.
14265 (QCspacing, QCdpi): New variables.
14266 (syms_of_font): Initialize them.
14267 (font_pixel_size): New function.
14268 (font_put_extra): New function.
14269 (font_parse_xlfd): Fix handling of font size. Add QCdpi property
14270 in FONT_EXTRA.
14271 (font_parse_fcname): Handle enumerated values (e.g. bold).
14272 Fix handling font size. Add QCname property that contains only
14273 unknown properties.
14274 (font_score): Change argument. Change caller. Pay attention to
14275 FONT_PIXEL_SIZE_QUANTUM.
14276 (font_sort_entites, font_list_entities, font_find_for_lface)
14277 (font_open_for_lface, font_open_by_name): Fix handling of font size.
14278 (Ffont_spec): Add QCname property that contains only unknown properties.
14279
14280 * ftfont.c (ftfont_list): Use assq_no_quit, not Fassq. Don't
14281 include weight in listing pattern, instead check weight of each
14282 listed font. Don't include scalable in pattern. Pay attention to
14283 FONT_PIXEL_SIZE_QUANTUM.
14284
142852008-02-01 Kenichi Handa <handa@m17n.org>
14286
14287 * font.c (font_parse_fcname): Fix parsing of point-size.
14288 (font_unparse_fcname): Produce symbolic names for style properties.
14289 (font_list_entities): Handle float size correctly.
14290 (font_open_by_name): Prefer `normal' property values if the name
14291 doesn't specify them.
14292
14293 * fontset.c (Finternal_char_font): Use font_get_name, not
14294 Ffont_xlfd_name.
14295
14296 * ftfont.c (ftfont_pattern_entity): Use the numeric value 100 for
14297 FC_WEIGHT_REGULAR. Exclude FC_SIZE and FC_PIXEL_SIZE from listing
14298 pattern. Don't force scalable.
14299
14300 * xftfont.c (xftfont_open): For generating a name, start from
14301 96-byte buffer.
14302
143032008-02-01 Jan Djärv <jan.h.d@swipnet.se>
14304
14305 * frame.h (x_new_fontset2): Fix prototype.
14306
143072008-02-01 Kenichi Handa <handa@m17n.org>
14308
14309 * font.h (struct font_driver): Delete member parse_name.
14310 (font_match_p, font_get_spec, font_parse_fcname)
14311 (font_unparse_fcname): Extern them.
14312 (font_get_name): Adjust prototype.
14313
14314 * font.c (XLFD_SMALLNUM_MASK): Delete this macro.
14315 (XLFD_LARGENUM_MASK): Delete XLFD_ENCODING_MASK from it.
14316 (font_expand_wildcards): Fix handling ENCODING field. Avoid
14317 unnecessary checks for weight, slant, and swidth.
14318 (font_parse_fcname): New function.
14319 (font_unparse_fcname): New function.
14320 (font_parse_name): New function.
14321 (font_match_p): New function.
14322 (font_get_name): Change return value to Lisp string.
14323 (font_get_spec): New function.
14324 (Qunspecified, Qignore_defface): Don't extern them.
14325 (font_find_for_lface): Assume that LFACE is fully specified.
14326 (font_load_for_face): If lface[LFACE_FONT_INDEX] is an font
14327 object, use it for FACE.
14328 (font_open_by_name): Call Ffont_spec with QCname prop. Don't call
14329 driver->parse_name.
14330 (Ffont_spec): Call font_parse_name, not font_parse_xlfd.
14331
14332 * fontset.h (new_fontset_from_font) [USE_FONT_BACKEND]: Adjust
14333 prototype.
14334
14335 * fontset.c (new_fontset_from_font) [USE_FONT_BACKEND]: Delete
14336 argument F. Don't call Fnew_fontset. Instead, directly call
14337 make_fontset.
14338
14339 * frame.h (x_new_fontset2) [USE_FONT_BACKEND]: Adjust prototype.
14340
14341 * frame.c (x_set_font) [USE_FONT_BACKEND]: Adjust for the change
14342 of x_new_fontset2.
14343
14344 * ftfont.c (Qmonospace, Qsans_serif, Qserif, Qmono, Qsans)
14345 (Qsans__serif): New variables.
14346 (ftfont_generic_family_list): New variable.
14347 (syms_of_ftfont): Initialize the above variables.
14348 (ftfont_pattern_entity): Delete argument NAME.
14349 (ftfont_list_generic_family): New function.
14350 (ftfont_parse_name): Delete this function.
14351 (ftfont_list): Try generic family only when FcFontList found no font.
14352 (ftfont_list_family): Fix args to FcObjectSetBuild.
14353
14354 * xfaces.c (check_lface_attrs) [USE_FONT_BACKEND]: Accept font
14355 object in attrs[LFACE_FONT_INDEX].
14356 (set_lface_from_font_name): Cancel all changes for font-backend.
14357 (set_lface_from_font_and_fontset) [USE_FONT_BACKEND]: New
14358 function.
14359 (Finternal_set_lisp_face_attribute) [USE_FONT_BACKEND]: Accept a
14360 font object in QCfont attribute.
14361 (set_font_frame_param) [USE_FONT_BACKEND]: Likewise.
14362 (realize_default_face) [USE_FONT_BACKEND]: Call
14363 set_lface_from_font_and_fontset.
14364
14365 * xfns.c (x_default_font_parameter) [USE_FONT_BACKEND]: Try also
14366 "fixed", and signal error here if no suitable font was found.
14367
14368 * xfont.c (xfont_parse_name): Delete this function.
14369
14370 * xftfont.c (xftfont_open): Change coding style of error
14371 handling. Generate fontconfig's fontname pattern.
14372
14373 * xterm.h (struct x_output) [USE_FONT_BACKEND]: New member fontp.
14374 (FRAME_FONT_OBJECT) [USE_FONT_BACKEND]: New macro.
14375
14376 * xterm.c (x_new_fontset2) [USE_FONT_BACKEND]: Change arguments.
14377 Both args FONTSET and FONT_OBJECT must be existing ones.
14378
143792008-02-01 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
14380
14381 * macterm.c (mac_set_unicode_keystroke_event): Don't use MAKE_CHAR.
14382
143832008-02-01 Kenichi Handa <handa@m17n.org>
14384
14385 * xfont.c (xfont_open, xfont_encode_char): Fix typo.
14386
14387 * font.h (struct font): Fix typo.
14388
14389 * font.c (enum xlfd_field_index): Rename XLFD_XXX_SIZE_INDEX to
14390 XLFD_XXX_INDEX.
14391 (enum xlfd_field_mask): New enum.
14392 (intern_font_field): Changed argument. Change caller. If digits
14393 are followed by non-digits, return a symbol.
14394 (font_expand_wildcards): New function.
14395 (font_parse_xlfd): Fix wildcard handling.
14396 (Ffont_spec): If :name is specified, reflect the info in the other
14397 properties.
14398
14399 * ftfont.c (ftfont_pattern_entity): Fix typo.
14400 (ftfont_list): Enforce FC_LANG in PATTERN to cancel the effect of
14401 locale.
14402
144032008-02-01 Kenichi Handa <handa@m17n.org>
14404
14405 * font.h (Qiso8859_1, Qiso10646_1, Qunicode_bmp): Extern them.
14406
14407 * font.c (Qiso8859_1, Qiso10646_1, Qunicode_bmp): Move from ftfont.c.
14408 (font_unparse_xlfd): Fix argument type declaration. Append "*" if
14409 registry doesn't specify encoding part.
14410 (font_find_for_lface): Pay attention to LFACE_FONT_INDEX.
14411 (font_open_by_name): At first try parsing the name.
14412 (syms_of_font): Declare Qiso8859_1, Qiso10646_1, and Qunicode_bmp
14413 as Lisp symbols.
14414
14415 * fontset.c (reorder_font_vector): Pay attention to the case that
14416 the 3rd element of font_def is nil.
14417 (fontset_font): For the default fontset, append one more fontset
14418 elements for a script-based font specification. Don't add script
14419 attribute on finding a font.
14420 (new_fontset_from_font): Unconditionally set FONTSET_ASCII to the
14421 font name.
14422 (fontset_ascii_font): If a font can't be opened, return nil.
14423
14424 * ftfont.c (Qiso8859_1, Qiso10646_1, Qunicode_bmp): Move to font.c.
14425 (ftfont_pattern_entity): New function.
14426 (ftfont_get_cache): Assume that freetype_font_cache is already
14427 initialized.
14428 (ftfont_list): Handle the case that a file is specified in font
14429 name. Use ftfont_pattern_entity to generate entities.
14430 (ftfont_has_char): Check if the pattern contains FC_CHARSET.
14431 (syms_of_ftfont): Initialize freetype_font_cache.
14432
14433 * xftfont.c (xftfont_open): Make the font name fontconfig's
14434 style. Add BLOCK_INPUT and UNBLOCK_INPUT.
14435 (xftfont_close): Free font->font.name if not NULL.
14436
14437 * xfont.c (xfont_list): If script is specified for a font, return
14438 null_vector.
14439 (xfont_list_family): Declare argument type.
14440
14441 * xfaces.c (set_lface_from_font_name): If a font doesn't have a
14442 name, set LFACE_FONT (lface) to nil.
14443
14444 * xterm.c (x_new_fontset2): If an ASCII font couldn't be loaded,
14445 return Qnil.
14446
144472008-02-01 Kenichi Handa <handa@m17n.org>
14448
14449 * emacs.c (main): Check -enable-font-backend arg after the check of -nl.
14450 (standard_args): Add "-enable-font-backend".
14451
144522008-02-01 Kenichi Handa <handa@m17n.org>
14453
14454 * xftfont.c (xftfont_default_fid): Set fid_known to 1.
14455 (struct xftdraw_list, xftdraw_list): Delete them.
14456 (register_xftdraw, check_xftdraw): Delete them.
14457 (xftfont_prepare_face): Don't call register_xftdraw.
14458 (xftfont_done_face): Don't call check_xftdraw.
14459 (xftfont_draw): Get background color only when with_background is
14460 nonzero.
14461
14462 * xfont.c (xfont_encode_char): Fix calculation of char2b.
14463
144642008-02-01 Kenichi Handa <handa@m17n.org>
14465
14466 These changes are for the new font handling codes.
14467
14468 * Makefile.in (ALL_CFLAGS): Add @FREETYPE_CFLAGS@,
14469 @FONTCONFIG_CFLAGS@, and @LIBOTF_CFLAGS@.
14470 (LIB_X11_LIB): If HAVE_XFT is defined, set to @XFT_LIBS@.
14471 (FONTSRC, FONTOBJ): New variables.
14472 (obj): Add $(FONTOBJ).
14473 (SOME_MACHINE_OBJECTS): Lib_X11_Lib.
14474 (LIBES): Add @FREETYPE_LIBS@, @FONTCONFIG_LIBS@, and
14475 @LIBOTF_LIBS@.
14476 (font.o, ftfont.o, xfont.o, xftfont.o, ftxfont.o): New targets.
14477 (fontset.o, xdisp.o, xfaces.o, xfns.o, xterm.o): Depend on $(FONTSRC).
14478
14479 * font.h, font.c, xfont.c, ftfont.c, xftfont.c, ftxfont.c: New files.
14480
14481 * character.h (Vscript_representative_chars): Extern it.
14482
14483 * character.c (Vscript_representative_chars): New variable.
14484 (syms_of_character): Declare it as a Lisp variable.
14485
14486 * composite.c (get_composition_id) [USE_FONT_BACKEND]: If
14487 enable_font_backend is nonzero, accept the composition method
14488 COMPOSITION_WITH_GLYPH_STRING.
14489
14490 * composite.h (enum composition_method) [USE_FONT_BACKEND]: New
14491 enumeration COMPOSITION_WITH_GLYPH_STRING.
14492
14493 * dispextern.h (struct glyph_string) [USE_FONT_BACKEND]: New
14494 members clip_x, clip_y, clip_width, and clip_height.
14495 (struct face) [USE_FONT_BACKEND]: New members font_info and extra.
14496
14497 * emacs.c (main) [USE_FONT_BACKEND]: Handle arg
14498 --enable-font-backend. Call syms_of_font.
14499
14500 * fns.c (assoc_no_quit): New function.
14501
14502 * fontset.h (FONT_INFO_FROM_FACE): New macro.
14503 (face_for_font, new_fontset_from_font)
14504 (fontset_ascii_font) [USE_FONT_BACKEND]: Extern them.
14505
14506 * fontset.c [USE_FONT_BACKEND]: Include "font.h".
14507 (fontset_font, fontset_ascii, face_for_char)
14508 (make_fontset_for_ascii_face, Ffont_info)
14509 (Finternal_char_font) [USE_FONT_BACKEND]: If enable_font_backend
14510 is nonzero, use font-backend mechanism.
14511 (find_font_encoding): Make it non-static.
14512 (new_fontset_from_font, fontset_ascii_font) [USE_FONT_BACKEND]:
14513 New functions.
14514
14515 * frame.h (struct frame): New members resx and resy.
14516 (struct frame) [USE_FONT_BACKEND]: New member font_driver_list.
14517 (x_new_fontset2) [USE_FONT_BACKEND]: Extern it.
14518
14519 * frame.c [USE_FONT_BACKEND]: Include "font.h".
14520 (make_frame, x_set_font) [USE_FONT_BACKEND]: Use font-backend mechanism.
14521
14522 * lisp.h (assoc_no_quit): Extern it.
14523
14524 * xdisp.c: If USE_FONT_BACKEND is defined, include "font.h".
14525 Through out the file, use FONT_INFO_FROM_FACE instead of
14526 FONT_INFO_FROM_ID, use get_per_char_metric instead of
14527 rif->per_char_metric.
14528 (handle_composition_prop) [USE_FONT_BACKEND]: If the composition
14529 method is COMPOSITION_WITH_GLYPH_STRING, just set it->c to ' '.
14530 (get_glyph_face_and_encoding, fill_composite_glyph_string)
14531 (get_char_face_and_encoding, BUILD_COMPOSITE_GLYPH_STRING)
14532 (x_produce_glyphs) [USE_FONT_BACKEND]: If enable_font_backend is
14533 nonzero, use font-backend mechanism.
14534 (get_per_char_metric): New function.
14535
14536 * xfaces.c [USE_FONT_BACKEND]: Include "font.h".
14537 (set_lface_from_font_name)
14538 (set_font_frame_param, free_realized_face)
14539 (prepare_face_for_display, clear_face_gcs)
14540 (Finternal_set_font_selection_order, realize_x_face)
14541 [USE_FONT_BACKEND]: If enable_font_backend is nonzero, use
14542 font-backend mechanism.
14543 (clear_face_cache) [USE_FONT_BACKEND]: Don't call clear_font_table.
14544 (load_face_font) [USE_FONT_BACKEND]: Abort.
14545 (face_symbolic_value, face_symbolic_weight, face_symbolic_slant)
14546 (face_symbolic_swidth, face_for_font) [USE_FONT_BACKEND]: New functions.
14547
14548 * xfns.c [USE_FONT_BACKEND]: Include "font.h".
14549 (x_default_font_parameter) [USE_FONT_BACKEND]: New function.
14550 (Fx_create_frame) [USE_FONT_BACKEND]: If enable_font_backend is
14551 nonzero, register all available font drivers. Call
14552 x_default_font_parameter for deciding a font.
14553 (x_create_tip_frame) [USE_FONT_BACKEND]: Likewise.
14554
14555 * xterm.c [USE_FONT_BACKEND]: Include "font.h".
14556 (x_set_mouse_face_gc, x_set_glyph_string_clipping)
14557 (x_set_glyph_string_clipping_exactly)
14558 (x_compute_glyph_string_overhangs)
14559 (x_draw_glyph_string_foreground)
14560 (x_draw_composite_glyph_string_foreground, x_draw_glyph_string)
14561 (x_free_frame_resources) [USE_FONT_BACKEND]: If
14562 enable_font_backend is nonzero, use font-backend mechanism.
14563 (x_new_fontset2) [USE_FONT_BACKEND]: New function.
14564
145652008-02-01 Kenichi Handa <handa@m17n.org>
14566
14567 * coding.c (coding_inherit_eol_type): If PARENT is nil, inherit from
14568 system_eol_type.
14569 (syms_of_coding): Initialize system_eol_type.
14570
14571 * process.c (Fset_process_coding_system): Inherit system's eol
14572 format if necessary.
14573
145742008-02-01 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
14575
14576 * macgui.h (USE_ATSUI): Don't enable on emacs-unicode-2 branch.
14577
145782008-02-01 Kenichi Handa <handa@m17n.org>
14579
14580 * coding.c (decode_eol): Pay attention to buffer relocation in
14581 del_range_2.
14582 (decode_coding): Call decode_eol before restoring undo_list.
14583
145842008-02-01 Kenichi Handa <handa@m17n.org>
14585
14586 * charset.c (Fdefine_charset_internal): Fix setting of
14587 emacs_mule_bytes.
14588
145892008-02-01 Kenichi Handa <handa@m17n.org>
14590
14591 * keyboard.c (read_char): Check if C is a character or not before
14592 looking up Vkeyboard_translate_table.
14593
145942008-02-01 Kenichi Handa <handa@m17n.org>
14595
14596 * coding.c (DECODE_EMACS_MULE_20_RELATIVE_COMPOSITION): Fix
14597 condition to terminate the loop.
14598
145992008-02-01 Kenichi Handa <handa@m17n.org>
14600
14601 * coding.c (produce_composition): Compare charbuf[i] instead of
14602 args[i] against 0.
14603 (Fterminal_coding_system): Use EQ to compare Lisp objects.
14604
146052008-02-01 Kenichi Handa <handa@m17n.org>
14606
14607 * coding.c (DECODE_COMPOSITION_START): If the source is short, set
14608 coding->result to CODING_RESULT_INSUFFICIENT_SRC.
14609 (decode_coding_gap): Set CODING_MODE_LAST_BLOCK after the call of
14610 detect_coding.
14611 (emacs_mule_char): Handle old style (Emacs 20) component character
14612 of a composition.
14613 (DECODE_EMACS_MULE_COMPOSITION_RULE_20)
14614 (DECODE_EMACS_MULE_20_RULEBASE_COMPOSITION): Fix parsing a
14615 composition rule.
14616 (decode_coding_emacs_mule): Handle invalid bytes correctly.
14617
146182008-02-01 Kenichi Handa <handa@m17n.org>
14619
14620 * coding.c (encode_coding_ccl): Allocate destination dynamically
14621 when necessary.
14622
146232008-02-01 Kenichi Handa <handa@m17n.org>
14624
14625 * ccl.c (Fccl_execute_on_string): Fix the condition of terminating
14626 the loop. When quitted, show a proper error message.
14627
146282008-02-01 Kenichi Handa <handa@m17n.org>
14629
14630 * xterm.c (x_set_glyph_string_clipping_exactly): Set
14631 src->clip_head and src->clip_tail temporarily instead of src->hl.
14632
14633 * ccl.c (CCL_WRITE_STRING): Handle a flag bit for multibyte
14634 character sequence.
14635 (Fccl_execute_on_string): Use ASET, not XSET.
14636
146372008-02-01 Kenichi Handa <handa@m17n.org>
14638
14639 * search.c (search_buffer): Fix handling of "\\" in a trivial regexp.
14640
146412008-02-01 Kenichi Handa <handa@m17n.org>
14642
14643 * coding.c (decode_coding): Fix the condition of terminating the
14644 decoding loop.
14645
146462008-02-01 Kenichi Handa <handa@m17n.org>
14647
14648 * data.c (Faset): On setting a character bigger than 255 in a
14649 unibyte string, signal an error instead of make the string multibyte.
14650
146512008-02-01 Kenichi Handa <handa@m17n.org>
14652
14653 * charset.c (map_charset_chars): Fix for ascii-compatible charset
14654 made by a mapping table.
14655
146562008-02-01 Kenichi Handa <handa@m17n.org>
14657
14658 * xdisp.c (fill_composite_glyph_string): Check s->face is NULL or
14659 not.
14660 (BUILD_COMPOSITE_GLYPH_STRING): If C is TAB, set s->face to NULL.
14661 (x_produce_glyphs): If CH is TAB, set cmp->offsets properly.
14662
14663 * xterm.c (x_draw_composite_glyph_string_foreground): Check
14664 s->face is NULL or not.
14665
146662008-02-01 Kenichi Handa <handa@m17n.org>
14667
14668 * xterm.c (x_set_glyph_string_clipping_exactly): New function.
14669 (x_draw_glyph_string): Fix drawing of right_overhang and
14670 left_overhang around/on cursor.
14671
14672 * xdisp.c (draw_glyphs): Fix inclusion of right_overwriting glyphs.
14673
146742008-02-01 Kenichi Handa <handa@m17n.org>
14675
14676 * xdisp.c (x_produce_glyphs): Handle composition with TAB.
14677
146782008-02-01 Kenichi Handa <handa@m17n.org>
14679
14680 * coding.c (Fdefine_coding_system_internal)
14681 (Fdefine_coding_system_alias): Avoid a duplicated element in
14682 Vcoding_system_alist.
14683
146842008-02-01 Kenichi Handa <handa@m17n.org>
14685
14686 * xterm.c (handle_one_xevent): Handle keysyms 0x1000000..0x10000FF.
14687
14688 * coding.c (Qcoding_system_define_form): New variable.
14689 (syms_of_coding): Intern and staticpro it.
14690 (Fcoding_system_p): Check Qcoding_system_define_form.
14691 (Fcheck_coding_system): Try to autoload the definition of CODING-SYSTEM.
14692
14693 * coding.h (CODING_SYSTEM_P): If ID is not available, call
14694 Fcoding_system_p.
14695 (CHECK_CODING_SYSTEM): If ID is not available, call
14696 Fcheck_coding_system.
14697 (CHECK_CODING_SYSTEM_GET_SPEC, CHECK_CODING_SYSTEM_GET_ID):
14698 Try also Fcheck_coding_system.
14699
147002008-02-01 Kenichi Handa <handa@m17n.org>
14701
14702 * coding.c (code_conversion_restore): GCPRO arg.
14703
147042008-02-01 Kenichi Handa <handa@m17n.org>
14705
14706 * character.c (lisp_string_width): Check multibyteness of STRING.
14707
147082008-02-01 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
14709
14710 * macterm.c (mac_encode_char): Call ccl_driver with the last arg
14711 Qnil. Use JIS_TO_SJIS instead of ENCODE_SJIS.
14712 (decode_mac_font_name): Use decode_coding_c_string instead of
14713 decode_coding.
14714 (x_load_font): Initialize fontp->fontset to -1. Set
14715 fontp->encoding_type.
14716
147172008-02-01 Kenichi Handa <handa@m17n.org>
14718
14719 * search.c (search_buffer): Give up BM search on case-fold-search
14720 if one of a target character has a case-equivalence of different
14721 byte length even if that target charcter is an ASCII.
14722 (simple_search): Fix calculation of byte length of matched text.
14723 (boyer_moore): Fix handling of case-equivalent multibyte characters.
14724
147252008-02-01 Kenichi Handa <handa@m17n.org>
14726
14727 * coding.c (decode_coding): Fix handling of invalid bytes.
14728
147292008-02-01 Kenichi Handa <handa@m17n.org>
14730
14731 * xterm.c (handle_one_xevent): Handle keysyms directly mapped to
14732 Unicode characters.
14733
147342008-02-01 Kenichi Handa <handa@m17n.org>
14735
14736 * coding.c (encode_coding_object): If a pre-write-conversion
14737 function makes a new buffer, kill it.
14738
147392008-02-01 Kenichi Handa <handa@m17n.org>
14740
14741 * coding.c (QCascii_compatible_p): New variable.
14742 (syms_of_coding): Initialize it.
14743 (ONE_MORE_BYTE, ONE_MORE_BYTE_NO_CHECK): Decrement `src' before
14744 calling string_char.
14745 (record_conversion_result): Add `default:' case.
14746 (coding_charset_list): Delete unused variable `coding_type'.
14747 (Fdefine_coding_system_internal): Add `ascii-compatible-p'
14748 property in the plist of the coding system.
14749 (Fcoding_system_put): Check QCascii_compatible_p.
14750
147512008-02-01 Miles Bader <miles@gnu.org>
14752
14753 * xfaces.c (Finternal_lisp_face_equal_p): Restore previously
14754 removed calculation of frame `f', as it's now used.
14755
147562008-02-01 Kenichi Handa <handa@m17n.org>
14757
14758 * Makefile.in (RUN_TEMACS): Include "-nl" if HAVE_SHM is defined.
14759 (emacs${EXEEXT}): Run $(RUN_TEMACS) unconditionally.
14760 (UNIDATA): New variable.
14761 (${lispsource}international/charprop.el): Depends on ${UNIDATA}.
14762 (bootstrap-emacs${EXEEXT}): Depends on charprop.el. Run
14763 $(RUN_TEMACS) unconditionally.
14764
147652008-02-01 Kenichi Handa <handa@m17n.org>
14766
14767 * Makefile.in (temacs${EXEEXT}): Build charprop.el if necessary.
14768 (admindir): New variable.
14769 ($(lispsource)international/charprop.el): New target.
14770
147712008-02-01 Miles Bader <miles@gnu.org>
14772
14773 * character.c (chars-in-region): Remove obsolete function.
14774 (syms_of_character): Remove its initialization.
14775
147762008-02-01 Benjamin Riefenstahl <b.riefenstahl@turtle-trading.net>
14777
14778 * w32select.c (validate_coding_system)
14779 (setup_windows_coding_system): New functions.
14780 (convert_to_handle_as_coded, Fw32_get_clipboard_data): Use
14781 setup_windows_coding_system.
14782 (setup_config, Fw32_get_clipboard_data): Use
14783 validate_coding_system.
14784 (Fx_selection_exists): Move call to setup_config to a place
14785 where signals are allowed.
14786
14787 * lisp.h (Fcoding_system_base, Fcoding_system_eol_type)
14788 (Fcheck_coding_system): Add declarations.
14789
147902008-02-01 Kenichi Handa <handa@m17n.org>
14791
14792 * charset.c (load_charset_map_from_vector): Fix for the first iteration.
14793
147942008-02-01 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
14795
14796 * macfns.c (Fx_create_frame, x_create_tip_frame): Pass Lisp
14797 string as the second argument for x_new_fontset.
14798
147992008-02-01 Kenichi Handa <handa@m17n.org>
14800
14801 * coding.c (decode_coding_object): Use safe_call1 instead of call1.
14802 (encode_coding_object): Use safe_call instead of call2.
14803
148042008-02-01 Kenichi Handa <handa@m17n.org>
14805
14806 * fontset.c (Fset_fontset_font): Check family element of a given vector.
14807
14808 * Makefile.in (lisp): Include charprop.el.
14809
148102008-02-01 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
14811
14812 * macfns.c (Fx_create_frame, x_create_tip_frame): Fix crash.
14813 Not sure if it's unnecessary.
14814
148152008-02-01 Steven Tamm <steventamm@mac.com>
14816
14817 * macfns.c (Fx_create_frame, x_create_tip_frame): ifdef'd out
14818 some possibly unnecessary fontset checking code that crashed
14819 when creating a new frame.
14820
148212008-02-01 Kenichi Handa <handa@m17n.org>
14822
14823 * xfaces.c (merge_faces): Fix argument to lookup_derived_face and
14824 lookup_face.
14825
14826 * xdisp.c (Fformat_mode_line): Fix argument to lookup_named_face.
14827
14828 * fringe.c (draw_fringe_bitmap_1): Fix argument to lookup_named_face.
14829
148302008-02-01 Kenichi Handa <handa@m17n.org>
14831
14832 * coding.c: Cancel the change done in HEAD on 2008-02-01.
14833 (coding_charset_list): New function.
14834
14835 * coding.h (coding_charset_list): Extern it.
14836
148372008-02-01 Kenichi Handa <handa@m17n.org>
14838
14839 * fontset.c (Fset_fontset_font): Call find_font_encoding with
14840 concatenation of family and registry.
14841
148422008-02-01 Kenichi Handa <handa@m17n.org>
14843
14844 * character.h (BYTE8_STRING): Fix typo.
14845
14846 * editfns.c (Ftranslate_region_internal): Don't convert unibyte
14847 string to multibyte (sync to HEAD).
14848
14849 * casefiddle.c (casify_region): Handle changes in byte-length
14850 using replace_range_2 (sync to HEAD).
14851
148522008-02-01 Andreas Schwab <schwab@suse.de>
14853
14854 * chartab.c (map_char_table): GCPRO table and arg.
14855
148562008-02-01 Kenichi Handa <handa@m17n.org>
14857
14858 * syntax.c (skip_syntaxes): Return lispy 0 (not nil) if point is
14859 already at limit.
14860
148612008-02-01 Kenichi Handa <handa@m17n.org>
14862
14863 * fontset.c (fs_load_font): Use fast_string_match_ignore_case
14864 instead of fast_c_string_match_ignore_case.
14865 (find_font_encoding): Change argument to Lisp_Object. Use
14866 fast_string_match_ignore_case instead of
14867 fast_c_string_match_ignore_case. Change caller.
14868
148692008-02-01 Kenichi Handa <handa@m17n.org>
14870
14871 * xdisp.c (get_next_display_element): In unibyte case, decide to
14872 display in octal form by checking a character by
14873 UNIBYTE_CHAR_HAS_MULTIBYTE_P.
14874
14875 * charset.c (Fset_unibyte_charset): Setup unibyte_has_multibyte_table.
14876
14877 * character.c (unibyte_has_multibyte_table): New variable.
14878
14879 * character.h (unibyte_has_multibyte_table): Extern it.
14880 (UNIBYTE_CHAR_HAS_MULTIBYTE_P): New macro.
14881
148822008-02-01 Kenichi Handa <handa@m17n.org>
14883
14884 * coding.c (encode_coding_iso_2022): Fix handling of charset
14885 annotation.
14886
148872008-02-01 Kenichi Handa <handa@m17n.org>
14888
14889 * coding.c (setup_coding_system): If coding_system is nil, use
14890 Qundecided.
14891 (Fterminal_coding_system): Return nil if terminal coding system is
14892 `undecided'.
14893 (syms_of_coding): Define coding-system `undecided' here. Setup
14894 terminal_coding as `undecided'.
14895
148962008-02-01 Kenichi Handa <handa@m17n.org>
14897
14898 * xdisp.c (message_dolog, set_message_1): Call
14899 unibyte_char_to_multibyte with arg type int.
14900
14901 * lread.c (read1): Fix reading of a char-table.
14902
14903 * print.c (print_object): Include sub char-table in circularities
14904 detection.
14905
149062008-02-01 Kenichi Handa <handa@m17n.org>
14907
14908 * keymap.c (where_is_internal_2): Fix for the case that KEY is a cons.
14909 Append the found sequences in car of ARGS instead of prepending.
14910
149112008-02-01 Kenichi Handa <handa@m17n.org>
14912
14913 * fileio.c (report_file_error): Make a unibyte string from
14914 strerror (errorno).
14915 (Fsubstitute_in_file_name): Fix the arg to
14916 unibyte_char_to_multibyte. It is evaluated twice.
14917
149182008-02-01 Kenichi Handa <handa@m17n.org>
14919
14920 * charset.h (CHAR_CHARSET): Shortcut for ASCII case.
14921
149222008-02-01 Kenichi Handa <handa@m17n.org>
14923
14924 * coding.c (detect_coding_utf_16): Don't set detect_info->found if
14925 BOM is not found.
14926 (detect_coding, detect_coding_system): Optimization for ISO-2022
14927 when no 8-bit data is found.
14928
149292008-02-01 Jason Rumney <jasonr@gnu.org>
14930
14931 * w32fns.c (x_to_w32_font): Update to use new coding struct.
14932
149332008-02-01 Kenichi Handa <handa@m17n.org>
14934
14935 * charset.c (Fdeclare_equiv_charset, Fiso_charset): Fix handing of
14936 CHARS.
14937
149382008-02-01 Steven Tamm <steventamm@mac.com>
14939
14940 * macterm.c (mac_encode_char): Add charset argument and update
14941 to use encoding_type.
14942 (x_new_font, x_new_fontset): Merge in changes from xterm.c;
14943 switch to pure fontset.
14944 (decode_mac_font_name): Temporarily remove decoding.
14945 (x_font_name_to_mac_font_name): Temporarily remove encoding.
14946 (x_load_font): Temporarily remove encoding.
14947
149482008-02-01 Kenichi Handa <handa@m17n.org>
14949
14950 * xfaces.c (Fface_font): If frame is not on a window system,
14951 ignore CHARACTER arg. If HAVE_WINDOW_SYSTEM is not defined, don't
14952 refer to face->font.
14953 (split_font_name_into_vector, build_font_name_from_vector)
14954 (lookup_non_ascii_face, realize_non_ascii_face): Define them only
14955 when HAVE_WINDOW_SYSTEM is defined.
14956
149572008-02-01 Kenichi Handa <handa@m17n.org>
14958
14959 * xdisp.c (BUILD_GLYPH_STRINGS): Check if s is NULL.
14960 (x_produce_glyphs): Fix setting of members of cmp in case
14961 cmp->glyph_len is zero.
14962
14963 * fontset.c (Fset_fontset_font): Fix docstring.
14964 (Ffontset_info): Make it backward compatible. New arg ALL.
14965
149662008-02-01 Kim F. Storm <storm@cua.dk>
14967
14968 * process.c (read_process_output): Grow decoding_buf when needed;
14969 this could cause a crash in allocate_string and compact_small_strings.
14970
149712008-02-01 Kenichi Handa <handa@m17n.org>
14972
14973 * fileio.c (WRITE_BUF_SIZE): Delete this macro.
14974
149752008-02-01 Kenichi Handa <handa@m17n.org>
14976
14977 * coding.c (setup_coding_system): Set coding->common_flags
14978 correctly for raw-text.
14979 (consume_chars): On encoding unibyte text by raw-text, don't check
14980 multibyte form.
14981 (encode_coding): On encoding by raw-text, never use translation tables.
14982
14983 * fileio.c (e_write): Short cut for the case of no encoding.
14984
149852008-02-01 Kenichi Handa <handa@m17n.org>
14986
14987 * coding.c (detect_coding, detect_coding_system): Delete unused
14988 variables.
14989
149902008-02-01 Kenichi Handa <handa@m17n.org>
14991
14992 * coding.c (encode_coding_utf_8): Fix handling of raw-byte char.
14993 (consume_chars): Fix handling of 8-bit bytes in unibyte source.
14994
149952008-02-01 Kenichi Handa <handa@m17n.org>
14996
14997 * coding.c (Ffind_coding_systems_region_internal): Include
14998 raw-text and no-conversion in the result.
14999
150002008-02-01 Kenichi Handa <handa@m17n.org>
15001
15002 * fontset.c (find_font_encoding): Return `ascii' for unknown encoding.
15003 (load_font_get_repertory): Delete unnecessary check of ENCODING of
15004 FONT_DEF.
15005 (font_def_arg, add_arg, from_arg, to_arg): New args.
15006 (set_fontset_font): Change argument.
15007 (Fset_fontset_font): Fix for the case that TARGET is a script
15008 name and charset name.
15009 (new_fontset_from_font_name): Fix argument to Fnew_fontset.
15010
150112008-02-01 Kenichi Handa <handa@m17n.org>
15012
15013 * fontset.c (fontset_font): Rename from fontset_face. Change return
15014 value.
15015 (face_suitable_for_char_p, face_for_char): Adjust for the change
15016 of fontset_font.
15017 (make_fontset_for_ascii_face): Fix setting of the fontset element
15018 for ASCII.
15019 (Finternal_char_font): Use fontset_font instead of FACE_FOR_CHAR
15020 to get a font name.
15021 (Ffontset_info): Adjust for the change of fontset_font.
15022
15023 * coding.c (emacs_mule_char): Check invalid code more rigidly.
15024
15025 * character.h (LEADING_CODE_LATIN_1_MIN)
15026 (LEADING_CODE_LATIN_1_MAX): Delete these macros.
15027
150282008-02-01 Kenichi Handa <handa@m17n.org>
15029
15030 * editfns.c (check_translation): New function.
15031 (Ftranslate_region_internal): Handle M:N mapping.
15032
150332008-02-01 Kenichi Handa <handa@m17n.org>
15034
15035 * xfaces.c (xlfd_point_size): Set font->numeric[XLFD_PIXEL_SIZE].
15036
150372008-02-01 Kenichi Handa <handa@m17n.org>
15038
15039 * coding.c (DECODE_DESIGNATION): Set chars_96 to -1 instead of
15040 goto invalid_code.
15041 (decode_coding_iso_2022): Fix handling of invalid designation.
15042
15043 * fileio.c (Finsert_file_contents): Be sure to call unbind_to
15044 after calling code_conversion_save.
15045
150462008-02-01 Kenichi Handa <handa@m17n.org>
15047
15048 * xdisp.c (handle_auto_composed_prop): Fix Lisp_Object/int mixup.
15049
15050 * print.c (print_prune_string_charset): Fix Lisp_Object/int mixup.
15051
15052 * fontset.c: Include "intervals.h".
15053 (fontset_face): Fix comparing of Lisp_Objects.
15054 (free_face_fontset, new_fontset_from_font_name): Fix
15055 Lisp_Object/int mixup.
15056
15057 * editfns.c (Ftranslate_region_internal): Fix Lisp_Object/int mixup.
15058
15059 * coding.c: Add many prototypes for static functions.
15060 (get_translation_table): Allow max_lookup to be NULL.
15061 (decode_coding, Ffind_coding_systems_region_internal)
15062 (Funencodable_char_position, Fcheck_coding_systems_region): Call
15063 get_translation_table with max_lookup NULL.
15064
150652008-02-01 Kenichi Handa <handa@m17n.org>
15066
15067 * coding.c (get_translation_table): Declare it as Lisp_Object.
15068 (LOOKUP_TRANSLATION_TABLE): New macro.
15069 (produce_chars, consume_chars): Use LOOKUP_TRANSLATION_TABLE
15070 instead of CHAR_TABLE_REF.
15071
150722008-02-01 Kenichi Handa <handa@m17n.org>
15073
15074 * coding.c (MAX_ANNOTATION_LENGTH): Adjust for the change of
15075 annotation data format.
15076 (ADD_ANNOTATION_DATA, ADD_COMPOSITION_DATA, ADD_CHARSET_DATA):
15077 Change arguments FROM and TO to single argument NCHARS. Change caller.
15078 (decode_coding_utf_8, decode_coding_utf_16, decode_coding_emacs_mule)
15079 (decode_coding_iso_2022, decode_coding_sjis, decode_coding_big5)
15080 (decode_coding_ccl, decode_coding_charset): Pay attention to
15081 coding->charbuf_used.
15082 (get_translation): New function.
15083 (produce_chars): New arguments translation_table and last_block.
15084 Translate characters here. Return number of carryover chars.
15085 Change caller.
15086 (produce_composition): New argument pos. Change caller.
15087 Adjust for the change of annotation data format.
15088 (produce_charset, produce_annotation): Likewise.
15089 (decode_coding, encode_coding): Don't call translate_chars.
15090 (consume_chars): New arg translation_table. Change caller.
15091 (translate_chars): Delete.
15092 (syms_of_coding): Make translation-table's number of extra slots 2.
15093
150942008-02-01 Kenichi Handa <handa@m17n.org>
15095
15096 * search.c (simple_search): Fix setting this_pos_byte in backward
15097 search.
15098
15099 * coding.c (detect_coding_emacs_mule): Fix counting of encoded
15100 byte sequence.
15101 (detect_coding_ccl): Fix setting of the variable valids.
15102
151032008-02-01 Kenichi Handa <handa@m17n.org>
15104
15105 * xterm.c (x_list_fonts): Fix the detection of an auto-scaled font.
15106
15107 * coding.c (decode_coding_utf_16): Fix handling of surrogate pair.
15108
15109 * editfns.c (Ftranslate_region_internal): Rename from
15110 Ftranslate_region. Accept a char-table in TABLE.
15111 (syms_of_editfns): Defsubr Stranslate_region_internal.
15112
15113 * xfaces.c (set_lface_from_font_name): If a font is specified for
15114 a frame, generate a fontset from the font.
15115 (build_scalable_font_name): If the scalable font is requested for
15116 a specific size, don't change that size.
15117 (try_font_list): Try a scalable font also in the case that a
15118 pattern string is specified.
15119
151202008-02-01 Kenichi Handa <handa@m17n.org>
15121
15122 * xfaces.c (Fface_font): New optional arg CHARACTER.
15123
151242008-02-01 Kenichi Handa <handa@m17n.org>
15125
15126 * charset.h (CHARSET_OFFSET): New macro.
15127
151282008-02-01 Kenichi Handa <handa@m17n.org>
15129
15130 * xterm.c (x_get_font_repertory): Fix for non-Unicode-bmp charset.
15131
15132 * fontset.c (fontset_face): Handle the case that repertory is a
15133 char-table.
15134 (find_font_encoding): Return nil for unknown encoding.
15135 (Fset_fontset_font): Ignore a font of unknown encoding.
15136
151372008-02-01 Kenichi Handa <handa@m17n.org>
15138
15139 * keymap.c (describe_vector): Handle default value of a char table.
15140
15141 * fontset.c (fontset_face): Handle fallback fonts correctly.
15142 (Ffontset_info): Return infomation about fallback fonts.
15143
151442008-02-01 Kenichi Handa <handa@m17n.org>
15145
15146 * fontset.c (FONTSET_DEFAULT): New macro.
15147 (FONTSET_ADD, fontset_add): Handle the case that range is nil.
15148 (Fset_fontset_font): Change the 2nd arg name to TARGET, and handle
15149 the case that it is nil.
15150 (dump_fontset): Call FONTSET_DEFAULT, not FONTSET_FALLBACK.
15151 (syms_of_fontset): Set char-table-extra-slots property of fontset to 9.
15152
15153 * charset.h (CHAR_CHARSET_P): Fix for the case that the method is
15154 subset or superset.
15155
151562008-02-01 Kenichi Handa <handa@m17n.org>
15157
15158 * emacs.c (main): Call init_charset after syms_of_XXX.
15159
15160 * charset.c (Vcharset_map_directory): Delete.
15161 (Vcharset_map_path): New variable.
15162 (load_charset_map_from_file): Use Vcharset_map_path instead.
15163 (init_charset): Initialize Vcharset_map_path.
15164 (syms_of_charset): Delete declaration of "charset-map-directory",
15165 add declaration of "charset-map-path".
15166
151672008-02-01 Kenichi Handa <handa@m17n.org>
15168
15169 * fns.c (string_char_to_byte, string_byte_to_char): Optimize for
15170 ASCII only string.
15171
15172 * fileio.c (Finsert_file_contents): Avoid detecting a code twice.
15173
15174 * coding.c (detect_coding_iso_2022): Fix handling of SS2 and SS3.
15175 (detect_coding, detect_coding_system): Treat '\0' as normal ASCII byte.
15176
151772008-02-01 Kenichi Handa <handa@m17n.org>
15178
15179 * coding.h (SJIS_TO_JIS2, JIS_TO_SJIS2): New macros.
15180
15181 * coding.c (QCmnemonic, QCdefalut_char)
15182 (QCdecode_translation_table, QCencode_translation_table)
15183 (QCpost_read_conversion, QCpre_write_conversion): New variables.
15184 (get_translation_table): Return a list of translation tables if
15185 necessary.
15186 (decode_coding): Call get_translation_table with ENCODEP 0.
15187 (char_encodable_p): If translation_table is non-nil, always call
15188 translate_char.
15189 (Fdefine_coding_system_internal): Accept list of translation
15190 tables as :encode-translation-table and :decode-translation-table.
15191 (Fcoding_system_put): New function.
15192 (syms_of_coding): Declare new symbols. Defsubr
15193 Scoding_system_put.
15194 (decode_coding_sjis, encode_coding_sjis): Handle 4th charset,
15195 typically JISX0212.
15196
15197 * charset.c (map_charset_chars): Fix arg to map_charset_chars in
15198 when the charset is superset type.
15199
15200 * character.c (translate_char): Accept list of translation tables.
15201
152022008-02-01 Kenichi Handa <handa@m17n.org>
15203
15204 * coding.h (enum coding_attr_index): New member coding_attr_trans_tbl.
15205 (CODING_ATTR_TRANS_TBL): New macro.
15206
15207 * coding.c (get_translation_table): New function.
15208 (translate_chars): Fix the bug of skipping annotation data.
15209 (decode_coding, encode_coding): Utilize get_translation_table.
15210 (char_encodable_p, Funencodable_char_position): Translate char if
15211 necessary.
15212 (Ffind_coding_systems_region_internal)
15213 (Fcheck_coding_systems_region): Setup translation table for encode
15214 in a coding system attribute vector in advance.
15215 (Fdefine_coding_system_internal): Allow a symbol as translation
15216 table. For shift-jis type coding system, allow 4th charset.
15217
152182008-02-01 Kenichi Handa <handa@m17n.org>
15219
15220 * coding.c (decode_coding_sjis): Check the first byte rigidly.
15221
15222 * xdisp.c (get_next_display_element): Pass -1 as POS to
15223 FACE_FOR_CHAR if displaying a C-string.
15224
152252008-02-01 Kenichi Handa <handa@m17n.org>
15226
15227 * composite.c (get_composition_id): Handle xoff and yoff in a
15228 composition rule.
15229
15230 * composite.h (COMPOSITION_DECODE_RULE): New arg xoff and yoff.
15231 (struct composition): New member lbearing and rbearing.
15232
15233 * xdisp.c (move_it_to): Optimize for the case (op & MOVE_TO_Y).
15234 (x_get_glyph_overhangs): Handle a composition glyph.
15235 (x_produce_glyphs): Setup lbearing and rbreaing for a composition glyph.
15236
15237 * xterm.c (x_compute_glyph_string_overhangs): Handle also a
15238 composition glyph.
15239
152402008-02-01 Kenichi Handa <handa@m17n.org>
15241
15242 * print.c: Include charset.h.
15243 (Vprint_charset_text_property): New variable.
15244 (Qdefault): Extern it.
15245 (PRINT_STRING_NON_CHARSET_FOUND)
15246 (PRINT_STRING_UNSAFE_CHARSET_FOUND): New macros.
15247 (print_check_string_result): New variable.
15248 (print_check_string_charset_prop): New function.
15249 (print_prune_charset_plist): New variable.
15250 (print_prune_string_charset): New function.
15251 (print_object): Call print_prune_string_charset if
15252 Vprint_charset_text_property is not t.
15253 (print_interval): Print nothing if interval->plist is nil.
15254 (syms_of_print): Declare Vprint_charset_text_property as a lisp
15255 variable. Init and staticpro print_prune_charset_plist.
15256
152572008-02-01 Kenichi Handa <handa@m17n.org>
15258
15259 * fontset.c (new_fontset_from_font_name): Use the specified font
15260 for all characters in the new fontset.
15261
15262 * macterm.c (x_set_mouse_face_gc): Call FACE_FOR_CHAR with POS and
15263 OBJECT args.
15264
15265 * xdisp.c (x_produce_glyphs): Call FACE_FOR_CHAR with POS and
15266 OBJECT args for composition too.
15267
15268 * w32term.c (x_set_mouse_face_gc): Call FACE_FOR_CHAR with POS and
15269 OBJECT args.
15270
152712008-02-01 Kenichi Handa <handa@m17n.org>
15272
15273 * dispextern.h (FACE_FOR_CHAR): New args POS and OBJECT.
15274
15275 * fontset.c (reorder_font_vector): Adjust for the change of
15276 FONT_DEF format.
15277 (fontset_face): New arg id. Change caller.
15278 (face_for_char): New args pos and object.
15279 (make_fontset_for_ascii_face): Adjust for the change of FONT_DEF format.
15280 (fs_query_fontset): Check NAME by Fassoc too.
15281 (Fset_fontset_font): Allow non-XLFD font name.
15282 (Ffontset_info): Adjust for the change of FONT_DEF format.
15283
15284 * fontset.h (face_for_char): Adjust prototype.
15285
15286 * xdisp.c (face_before_or_after_it_pos, get_next_display_element)
15287 (append_space, extend_face_to_end_of_line)
15288 (get_char_face_and_encoding, BUILD_COMPOSITE_GLYPH_STRING)
15289 (x_produce_glyphs): Call FACE_FOR_CHAR with POS and OBJECT args.
15290
15291 * xfaces.c (compute_char_face): Call FACE_FOR_CHAR with
15292 POS and OBJECT args.
15293
15294 * xterm.c (x_set_mouse_face_gc): Call FACE_FOR_CHAR with
15295 POS and OBJECT args.
15296
152972008-02-01 Jason Rumney <jasonr@gnu.org>
15298
15299 * w32select.c (Fw32_set_clipboard_data): Avoid potential realloc
15300 of GlobalAlloc'ed memory.
15301
153022008-02-01 Kenichi Handa <handa@m17n.org>
15303
15304 * ccl.c (Fccl_execute_on_string): Fix the condition of loop.
15305
15306 * charset.h (charset_table_used): Delete extern.
15307
15308 * charset.c (charset_table_used): Make it static.
15309 (map_charset_chars): Fix args to c_function with.
15310
15311 * chartab.c (map_sub_char_table_for_charset): Fix args to
15312 c_function with.
15313
15314 * coding.h (enum coding_result_code): Delete
15315 CODING_RESULT_INSUFFICIENT_CMP, add CODING_RESULT_INVALID_SRC.
15316
15317 * coding.c (Qinsufficient_source, Qinconsistent_eol)
15318 (Qinvalid_source, Qinterrupted, Qinsufficient_memory): New variables.
15319 (Vlast_code_conversion_error): New variables.
15320 (syms_of_coding): DEFSYM or DEFVAR_LISP them.
15321 (ONE_MORE_BYTE): Record error if any instead of signaling an
15322 error. If non-ASCII multibyte char is found, return the negative
15323 value of the code. All callers changed to check it.
15324 (ONE_MORE_BYTE_NO_CHECK): Likewise.
15325 (record_conversion_result): New function. Change all codes setting
15326 coding->result to call this function.
15327 (detect_coding_utf_8, decode_coding_utf_8)
15328 (detect_coding_emacs_mule, detect_coding_sji, detect_coding_big5):
15329 Don't use the local variable incomplete.
15330 (emacs_mule_char): Change the second arg to `const'.
15331 (decode_coding): Fix of flushing out unprocessed data.
15332 (make_conversion_work_buffer): Fix making of a work buffer.
15333 (decode_coding_object): Return coding->dst_object.
15334
15335 * fontset.c (set_fontset_font): Fix args.
15336
15337 * lisp.h (CHARACTERBITS): Define as 22.
15338
15339 * process.c (send_process): Be sure to set coding->src_multibyte.
15340
15341 * xdisp.c (handle_auto_composed_prop): Fix setting of limit.
15342
153432008-02-01 Kenichi Handa <handa@m17n.org>
15344
15345 * xdisp.c (handle_auto_composed_prop): Give limit to
15346 Fnext_single_char_property_change.
15347
153482008-02-01 Kenichi Handa <handa@m17n.org>
15349
15350 * composite.c (syms_of_composite): Don't make the composition hash
15351 table weak.
15352
15353 * fontset.c (Fset_fontset_font): Fix docstring.
15354
15355 * lisp.h (detect_coding_system): Adjust prototype.
15356
15357 * fileio.c (kill_workbuf_unwind): Delete this function.
15358 (Finsert_file_contents): Adjust the call of detect_coding_system.
15359 Get conversion_buffer by code_conversion_save. Use the macro
15360 CODING_MAY_REQUIRE_DECODING. After decoding, update
15361 coding_system.
15362
15363 * coding.h (make_conversion_work_buffer): Delete extern.
15364 (code_conversion_save): Extern it.
15365
15366 * coding.c (enum iso_code_class_type): Delete ISO_carriage_return.
15367 (CODING_GET_INFO): Delete argument eol_type. Change callers.
15368 (decode_coding_utf_8): Don't do eol converion.
15369 (detect_coding_utf_16): Check coding->src_chars, not
15370 coding->src_bytes. Add heuristics for those that have no signature.
15371 (decode_coding_emacs_mule, decode_coding_iso_2022)
15372 (decode_coding_sjis, decode_coding_big5, decode_coding_charset):
15373 Don't do eol converion.
15374 (adjust_coding_eol_type): Return a new coding system.
15375 (detect_coding): Don't detect eol. Fix for utf-16 detection.
15376 (decode_eol): In case of CRLF->LF conversion, use del_range_2 on
15377 each change.
15378 (decode_coding): Pay attention to undo_list. Do eol conversion for
15379 all types of coding-systems (if necessary).
15380 (Vcode_conversion_work_buf_list): Delete it.
15381 (Vcode_conversion_reused_workbuf): Rename from
15382 Vcode_conversion_reused_work_buf.
15383 (Vcode_conversion_workbuf_name): New variable.
15384 (reused_workbuf_in_use): New variable.
15385 (make_conversion_work_buffer): Delete the arg DEPTH.
15386 (code_conversion_restore): Change argument to cons.
15387 (code_conversion_save): Delete the argument BUFFER. Change callers.
15388 (detect_coding_system): New argument src_chars. Change callers.
15389 Fix for utf-16 detection.
15390 (init_coding_once): Don't use ISO_carriage_return.
15391 (syms_of_coding): Initialize Vcode_conversion_workbuf_name and
15392 reused_workbuf_in_use.
15393
153942008-02-01 Kenichi Handa <handa@m17n.org>
15395
15396 * keymap.c (store_in_keymap): Pay attention to the case that idx
15397 is a cons specifying a character range.
15398
153992008-02-01 Kenichi Handa <handa@m17n.org>
15400
15401 * xdisp.c (handle_auto_composed_prop): Fix the case of returning
15402 HANDLED_RECOMPUTE_PROPS.
15403
15404 * coding.c (Fdefine_coding_system_internal): Fix checking of
15405 ascii compatibility.
15406
154072008-02-01 Kenichi Handa <handa@m17n.org>
15408
15409 * charset.c (find_charsets_in_text): Delete unused locale variable.
15410 (Fset_charset_priority): Update Vemacs_mule_charset_list too.
15411
15412 * coding.c (encode_coding_emacs_mule): Emit bytes with MSB.
15413 Resync charset_list to Vemacs_mule_charset_list.
15414
15415 * keymap.c (store_in_keymap): Pay attention to the case that idx
15416 is a cons specifying a character range.
15417
154182008-02-01 Kenichi Handa <handa@m17n.org>
15419
15420 * composite.c (update_compositions): Bind inhibit-read-only, etc
15421 to t before calling remove-list-of-text-properties.
15422
15423 * print.c (print_object): Always print ASCII chars as is.
15424
154252008-02-01 Kenichi Handa <handa@m17n.org>
15426
15427 * keymap.c (Fdefine_key): Fix handling of Lucid style event type list.
15428
15429 * fns.c (Fmapconcat, Fmapcar, Fmapc): Signal an error if SEQUENCE
15430 is a char table.
15431
154322008-02-01 Kenichi Handa <handa@m17n.org>
15433
15434 * syntax.c (skip_chars): Be sure to alloca char_ranges when necessary.
15435
154362008-02-01 Kenichi Handa <handa@m17n.org>
15437
15438 * xfaces.c (set_lface_from_font_name): Fix for the case that
15439 FONTNAME is not fontset name.
15440
154412008-02-01 Kenichi Handa <handa@m17n.org>
15442
15443 * fns.c (base64_encode_1): Fix previous change.
15444
154452008-02-01 Kenichi Handa <handa@m17n.org>
15446
15447 * fontset.c (set_fontset_font): New function.
15448 (Fset_fontset_font): If a font is specified for a charset, use
15449 map_charset_chars to store the font spec in a fontset.
15450
154512008-02-01 Kenichi Handa <handa@m17n.org>
15452
15453 * fontset.c (fontset_face): Create a fallback fontset on demand.
15454 (make_fontset): Don't create a fallback fontset here.
15455 (free_face_fontset): Free a fallback fontset (if any) too.
15456 (n_auto_fontsets): Delete this variable.
15457 (auto_fontset_alist): New variable.
15458 (new_fontset_from_font_name): Check auto_fontset_alist.
15459 (dump_fontset) [FONTSET_DEBUG]: Fully re-written.
15460 (Ffontset_list_all) [FONTSET_DEBUG]: New function.
15461 (syms_of_fontset): Initialize and staticpro auto_fontset_alist.
15462 Defsubr Sfontset_list_all.
15463
154642008-02-01 Kenichi Handa <handa@m17n.org>
15465
15466 * xterm.c (x_list_fonts): Fix excluding of auto-scaled fonts.
15467
154682008-02-01 Kenichi Handa <handa@m17n.org>
15469
15470 * fontset.c (Fnew_fontset): Check NAME more rigidly.
15471
154722008-02-01 Kenichi Handa <handa@m17n.org>
15473
15474 * editfns.c (Fgoto_char): Fix docstring.
15475
154762008-02-01 Kenichi Handa <handa@m17n.org>
15477
15478 * insdel.c (insert_from_gap): Adjust intervals correctly.
15479
154802008-02-01 Jason Rumney <jasonr@gnu.org>
15481
15482 * w32term.c (GLYPHSET, WCRANGE): Define if system headers don't.
15483 (pfnGetFontUnicodeRanges): New dynamically loaded function.
15484 (w32_initialize): Try to load it.
15485 (x_get_font_repertory): Use it if available.
15486 (w32_encode_char): Add shortcut for unicode output.
15487
15488 * w32fns.c (w32_load_system_font): Default charset to -1.
15489 (x_to_w32_charset): Match all fonts for unicode.
15490 (w32_to_x_charset): New parameter matching. Don't return partial
15491 or wildcard charsets.
15492 (w32_to_all_x_charsets): Don't return partial or wildcard charsets.
15493 (w32_codepage_for_font): Return CP_UNICODE for unicode.
15494 (w32_to_x_font): Match charset to real charset.
15495 (enum_font_cb2): Always list unicode versions.
15496
15497 * makefile.w32-in (temacs): Increase EMHEAP.
15498
154992008-02-01 Jason Rumney <jasonr@gnu.org>
15500
15501 * w32term.c (w32_encode_char): New charset parameter.
15502 font_info.encoding becomes encoding_type.
15503 (x_get_font_repertory): New function. Warning: stub only!
15504 (x_new_font): Return quickly if font already set.
15505 (x_new_fontset): fontsetname parameter is Lisp_Object.
15506 Use new fs_query_fontset. Try new_fontset_from_font_name.
15507 Use fontset_name for return value.
15508
15509 * w32term.h: Declare x_get_font_repertory.
15510
15511 * w32select.c (Fw32_set_clipboard_data): Use string_x_string_p in
15512 place of find_charset_in_text. Use encode_coding_object in place
15513 of encode_coding.
15514 (Fw32_get_clipboard_data): Use decode_coding_c_string in place of
15515 decode_coding.
15516
15517 * w32fns.c (Fx_create_frame, x_create_tip_frame): Use new version
15518 of x_new_fontset.
15519 (w32_load_system_font): Initialize charset as unicode.
15520 font_info.encoding becomes encoding_type.
15521 (w32_to_x_font): Use decode_coding_c_string in place of decode_coding.
15522 (x_to_w32_font): Use encode_coding_object in place of encode_coding.
15523 (syms_of_w32fns): Set get_font_repertory_func.
15524
15525 * w32console.c: Include character.h. Use terminal_encode_buffer
15526 from term.c.
15527 (write_glyphs): Use new version of encode_terminal_code. Use
15528 encode_coding_object in place of encode_coding.
15529
15530 * w32bdf.c (w32_load_bdf_font): Clear font_info before filling.
15531 encoding becomes encoding_type.
15532
15533 * term.c (terminal_encode_buffer): Make externally visible.
15534
15535 * makefile.w32-in: Add character.h dependancies.
15536 (character.o, chartab.o): New targets.
15537
155382008-02-01 Kenichi Handa <handa@m17n.org>
15539
15540 * fileio.c (Finsert_file_contents) [DOS_NT]: Use the macro
15541 CODING_ID_EOL_TYPE.
15542
155432008-02-01 Andreas Schwab <schwab@suse.de>
15544
15545 * coding.c (produce_chars): Revert last change.
15546
155472008-02-01 Kenichi Handa <handa@m17n.org>
15548
15549 * charset.h (charset_unicode): Extern it.
15550
15551 * charset.c (string_xstring_p): Check by (C >= 0x100).
15552 (find_charsets_in_text): Change format of the arc CHARSETS. New
15553 arg MULTIBYTE.
15554 (Ffind_charset_region, Ffind_charset_string): Adjust for the
15555 change of find_charsets_in_text.
15556 (Fsplit_char): Fix doc. Never return unknown.
15557
15558 * chartab.c (char_table_translate): Use CHARACTERP, not INTEGERP.
15559
15560 * coding.c (Fdefine_coding_system_alias): Update
15561 Vcoding_system_list.
15562
15563 * fontset.c (load_font_get_repertory): Pay attention to the case
15564 that ENCODING of a font is specified by a char-table.
15565
15566 * xterm.c (x_get_font_repertory): Handle the case that the
15567 encoding of font is other than Unicode.
15568
155692008-02-01 Kenichi Handa <handa@m17n.org>
15570
15571 * term.c (encode_terminal_code): Don't handle glyph-table. Check
15572 if a character is encodable by the terminal coding system. If
15573 not, produces proper number of `?'s. Update
15574 terminal_encode_buffer and terminal_encode_buf_size if necessary.
15575 (produce_glyphs): Check by CHAR_BYTE8_P, not SINGLE_BYTE_CHAR_P.
15576
155772008-02-01 Kenichi Handa <handa@m17n.org>
15578
15579 * term.c (terminal_encode_buffer, terminal_encode_buf_size): New
15580 variables.
15581 (encode_terminal_code): Change argument. Encode multiple
15582 characters at once. Store the result of encoding in
15583 terminal_encode_buffer.
15584 (write_glyphs, insert_glyphs): Adjust for the change of
15585 encode_terminal_code.
15586 (term_init): Initialize terminal_encode_buffer and
15587 terminal_encode_buf_size.
15588
15589 * coding.c (consume_chars): If coding->src_object is nil, don't
15590 check annotation.
15591
155922008-02-01 Kenichi Handa <handa@m17n.org>
15593
15594 * character.c (char_string): Use ASCII_CHAR_P instead of
15595 SINGLE_BYTE_CHAR_P.
15596
155972008-02-01 Kenichi Handa <handa@m17n.org>
15598
15599 * xdisp.c (handle_auto_composed_prop): Check if the last
15600 characters of auto-composed region is newly composed with the
15601 following characters.
15602 (handle_composition_prop): Fix checking of point being inside
15603 composition.
15604
156052008-02-01 Kenichi Handa <handa@m17n.org>
15606
15607 * fns.c (concat): Don't change multibyteness of the result by
15608 concatenating an 8-bit character.
15609
15610 * data.c (Faset): Check newelt by CHECK_CHARACTER. Don't change
15611 multibyteness of the result when newelt is an 8-bit character.
15612
156132008-02-01 Dave Love <fx@gnu.org>
15614
15615 * xmenu.c (find_and_call_menu_selection): Make menu_bar_items_used
15616 EMACS_INT.
15617
15618 * xfns.c (DefaultDepthOfScreen, x_encode_text): Remove unused vars.
15619
15620 * xfaces.c (face_numeric_value): Declare dim size_t.
15621 (Finternal_lisp_face_equal_p): Remove unused f.
15622
15623 * xdisp.c (BUILD_CHAR_GLYPH_STRINGS, display_and_set_cursor)
15624 (MATRIX_ROW): Remove unused vars.
15625 (draw_glyphs, x_insert_glyphs, fast_find_position)
15626 (fast_find_position, fast_find_string_pos): Use EMACS_INT for
15627 byte/char counts.
15628
15629 * regex.c (regex_compile): Remove unused var.
15630
15631 * minibuf.c (Fminibuffer_complete_word): Remove unused var.
15632
15633 * keymap.c (Fset_keymap_parent, map_keymap, Fcopy_keymap)
15634 (Faccessible_keymaps, where_is_internal): Remove unused vars.
15635
15636 * keyboard.c (cancel_hourglass_unwind): Return Qnil.
15637
15638 * frame.c (frame_name_fnn_p): Make len EMACS_INT.
15639
15640 * fileio.c (Fwrite_region): Remove unused var.
15641
15642 * dispnew.c (adjust_frame_glyphs_for_frame_redisplay)
15643 (adjust_frame_glyphs_for_window_redisplay): Remove unused ch_dim.
15644
15645 * composite.c (Fremove_list_of_text_properties): Declare.
15646
15647 * coding.c (inhibit_pre_post_conversion): Remove (unused).
15648 (alloc_destination, produce_chars): Use EMACS_INT for byte/char counts.
15649 (coding_inherit_eol_type): Remove unused attrs.
15650 (detect_coding): Cast arg of detect_eol.
15651
15652 * charset.c (syms_of_charset): Remove unused var p.
15653 (find_charsets_in_text, Ffind_charset_region): Use EMACS_INT for
15654 byte/char counts.
15655
15656 * casetab.c (set_case_table): Remove unused var.
15657
15658 * window.c (Fdisplay_buffer, Fframe_selected_window): Remove
15659 unused vars.
15660
156612008-02-01 Dave Love <fx@gnu.org>
15662
15663 * xterm.c (x_bitmap_mask): Declare.
15664
156652008-02-01 Dave Love <fx@gnu.org>
15666
15667 * xterm.c (x_term_init): Fix type error.
15668
15669 * lisp.h: Add Funibyte_char_to_multibyte.
15670
15671 * coding.c (Fread_coding_system): Fix arg of XSETSTRING.
15672 (Fset_coding_system_priority): Doc fix.
15673
15674 * ccl.c (ccl_driver): Fix arg of CHARACTERP.
15675
15676 * indent.c (check_composition): Make start and end EMACS_INT.
15677
15678 * character.c (lisp_string_width): Make ignore and end EMACS_INT.
15679
15680 * xdisp.c (handle_composition_prop, check_point_in_composition):
15681 Make buffer positions EMACS_INT.
15682
15683 * composite.c (find_composition, run_composition_function)
15684 (update_compositions, Ffind_composition_internal): Make buffer
15685 positions EMACS_INT.
15686
15687 * composite.h (find_composition, update_compositions): Make
15688 position args EMACS_INT.
15689
15690 * keyboard.c (adjust_point_for_property): Make beg and end EMACS_INT.
15691
15692 * intervals.c (get_property_and_range):
15693 * intervals.h (get_property_and_range): Make start and end EMACS_INT.
15694
15695 * unexalpha.c: Don't include varargs.h.
15696
156972008-02-01 Dave Love <fx@gnu.org>
15698
15699 * coding.h (ENCODE_UTF_8): New.
15700
15701 * Makefile.in (gtkutil.o): Depend on coding.h.
15702
15703 * coding.c (Fset_coding_system_priority): Doc fix.
15704
157052008-02-01 Kenichi Handa <handa@m17n.org>
15706
15707 * fileio.c (Finsert_file_contents): Call setup_coding_system in
15708 the case of auto saving.
15709
157102008-02-01 Andreas Schwab <schwab@suse.de>
15711
15712 * chartab.c (map_char_table, map_char_table_for_charset): Protect
15713 `range' from GC.
15714
157152008-02-01 Kenichi Handa <handa@m17n.org>
15716
15717 * coding.c (decode_coding_sjis): Check bytes more rigidly.
15718
157192008-02-01 Kenichi Handa <handa@m17n.org>
15720
15721 * fileio.c (choose_write_coding_system): Return a decided coding system.
15722 (Fwrite_region): Set Vlast_coding_system_used to the return value
15723 of choose_write_coding_system.
15724
157252008-02-01 Kenichi Handa <handa@m17n.org>
15726
15727 * charset.c (Fset_charset_priority): Pay attention to duplicated
15728 arguments.
15729
15730 * coding.c (QCcategory): New variable.
15731 (syms_of_coding): Defsym it. Set all elements of
15732 Vcoding_category_table and their symbol values.
15733 (Fset_coding_system_priority): Doc fix. Update symbol qvalues of
15734 coding-category-XXX, and coding-category-list.
15735 (Fdefine_coding_system_internal): Add category in the plist.
15736
157372008-02-01 Kenichi Handa <handa@m17n.org>
15738
15739 * callproc.c (Fcall_process): Handle carryover correctly.
15740
15741 * coding.c (decode_coding_iso_2022): Fix handling of invalid bytes.
15742 (raw_text_coding_system): Check NILP (coding_system).
15743 (coding_inherit_eol_type): Check NILP (coding_system) and
15744 NILP (parent).
15745 (consume_chars): Fix for the case of raw-text.
15746
15747 * process.c (read_process_output): Handle carryover correctly.
15748
157492008-02-01 Dave Love <fx@gnu.org>
15750
15751 * regex.c (re_search_2): Fix last change.
15752
157532008-02-01 Kenichi Handa <handa@m17n.org>
15754
15755 * regex.c (GET_CHAR_BEFORE_2): Check multibyte, not
15756 target_multibyte. Even in a unibyte case, return a converted
15757 multibyte char.
15758 (GET_CHAR_AFTER): New macro.
15759 (PATFETCH): Translate via multibyte char.
15760 (HANDLE_UNIBYTE_RANGE): Delete this macro.
15761 (SETUP_MULTIBYTE_RANGE): New macro.
15762 (regex_compile): Setup compiled code so that its multibyteness
15763 matches that of a target. Fix the handling of "[X-YZ]" using
15764 SETUP_MULTIBYTE_RANGE.
15765 (analyse_first) <charset>: For filling fastmap for all multibyte
15766 characters, don't check by BASE_LEADING_CODE_P.
15767 (re_search_2): Don't check RE_TARGET_MULTIBYTE_P (bufp). It is
15768 the same as RE_MULTIBYTE_P (bufp) now.
15769 (mutually_exclusive_p): Check by (! multibyte || IS_REAL_ASCII (c)).
15770 (TARGET_CHAR_AND_LENGTH): Delete this macro.
15771 (TRANSLATE_VIA_MULTIBYTE): New macro.
15772 (re_match_2_internal): Don't check RE_TARGET_MULTIBYTE_P (bufp).
15773 It is the same as RE_MULTIBYTE_P (bufp) now.
15774 <exactn>: Translate via multibyte.
15775 <anychar>: Fetch a character by RE_STRING_CHAR_AND_LENGTH. Don't
15776 translate it.
15777 <charset, charset_not>: Fetch a character by
15778 RE_STRING_CHAR_AND_LENGTH. Translate via multibyte.
15779 <duplicate>: Call bcmp_translate with the last arg `multibyte'.
15780 <wordbound, notwordbound, wordbeg, wordend, syntaxspec,
15781 notsyntaxspec, categoryspec, notcategoryspec> Fetch a character
15782 by GET_CHAR_AFTER.
15783 (bcmp_translate): Likewise.
15784
15785 * search.c (compile_pattern): Check the member target_multibyte,
15786 not the member multibyte of buf.
15787
15788 * lread.c (read1): While reading a string, set force_singlebyte
15789 and force_multibyte correctly.
15790
15791 * charset.c (Fset_unibyte_charset, init_charset_once): Fix setting
15792 up of unibyte_to_multibyte_table.
15793
157942008-02-01 Kenichi Handa <handa@m17n.org>
15795
15796 * coding.c (setup_coding_system): If coding has
15797 post-read-conversion or pre-write-conversion, set
15798 CODING_REQUIRE_DECODING_MASK and CODING_REQUIRE_ENCODING_MASK
15799 respectively.
15800 (decode_coding_gap): Run post-read-conversion if any.
15801
15802 * fileio.c (Finsert_file_contents): Even if we read into a
15803 unibyte buffer, check if we must decode the result or not.
15804
158052008-02-01 Kenichi Handa <handa@m17n.org>
15806
15807 * coding.c (make_conversion_work_buffer): Change the work buffer
15808 name to the same one as that of Emacs 21.
15809
158102008-02-01 Kenichi Handa <handa@m17n.org>
15811
15812 * coding.h (make_conversion_work_buffer): Adjust prototype.
15813 (code_conversion_restore): Don't extern it.
15814
15815 * coding.c (detected_mask): Delete unused variable.
15816 (decode_coding_iso_2022): Pay attention to the byte sequence of
15817 CTEXT extended segment, and retain those bytes as is.
15818 (decode_coding_ccl): Delete unused variable `valids'.
15819 (setup_coding_system): Delete unused variable `category'.
15820 (consume_chars): Delete unused variable `category'. Make it work
15821 for non-multibyte case.
15822 (make_conversion_work_buffer): Change argument.
15823 (saved_coding): Delete unused variable.
15824 (code_conversion_restore): Don't check saved_coding->destination.
15825 (code_conversion_save): New function.
15826 (decode_coding_gap, encode_coding_gap): Call code_conversion_save
15827 instead of record_unwind_protect.
15828 (decode_coding_object, encode_coding_object): Likewise. Recover PT.
15829 (detect_coding_system): Delete unused variable `mask'.
15830 (Fdefine_coding_system_internal): Delete unused variable id.
15831
15832 * fileio.c (kill_workbuf_unwind): New function.
15833 (Finsert_file_contents): On replacing, call
15834 make_conversion_work_buffer with correct args, and call
15835 record_unwind_protect with the first arg kill_workbuf_unwind.
15836
15837 * lisp.h (Fgenerate_new_buffer_name): EXFUN it.
15838
158392008-02-01 Kenichi Handa <handa@m17n.org>
15840
15841 * fontset.c (BASE_FONTSET_P): Check FONTSET_BASE, not FONTSET_NAME.
15842 (fontset_add): Fix for the case that TO is less than TO1.
15843 (Ffontset_info): Don't use fallback fontset on checking the
15844 default fontset.
15845 (dump_fontset): New function for debugging.
15846
15847 * coding.c (Fdefine_coding_system_internal): Fix for the case that
15848 coding_type is Qcharset.
15849
158502008-02-01 Kenichi Handa <handa@m17n.org>
15851
15852 * chartab.c (map_sub_char_table): New argument DEFAULT_VAL.
15853 (map_char_table): Don't inherit the value from the parent on
15854 initializing VAL. Adjust for the above change.
15855
158562008-02-01 Kenichi Handa <handa@m17n.org>
15857
15858 * coding.c (Qsignature, Qendian): Delete these variables.
15859 (syms_of_coding): Don't initialize them.
15860 (CATEGORY_MASK_UTF_16_AUTO): New macro.
15861 (detect_coding_utf_16): Add CATEGORY_MASK_UTF_16_AUTO in
15862 detect_info->found.
15863 (decode_coding_utf_16): Don't detect BOM here.
15864 (encode_coding_utf_16): Produce BOM if CODING_UTF_16_BOM (coding)
15865 is NOT utf_16_without_bom.
15866 (setup_coding_system): For a coding system of type utf-16, check
15867 if the attribute :endian is Qbig or not (not nil or not), and set
15868 CODING_REQUIRE_DETECTION_MASK if BOM detection is required.
15869 (detect_coding): If coding type is utf-16 and BOM detection is
15870 required, detect it.
15871 (Fdefine_coding_system_internal): For a coding system of type
15872 utf-16, check if the attribute :endian is Qbig or not (not nil or not).
15873
158742008-02-01 Kenichi Handa <handa@m17n.org>
15875
15876 * coding.c (coding_set_source): Fix for the case that the current
15877 buffer is different from coding->src_object.
15878 (decode_coding_object): Don't use the conversion work buffer if
15879 DST_OBJECT is a buffer.
15880
158812008-02-01 Dave Love <fx@gnu.org>
15882
15883 * lread.c (read_emacs_mule_char) [len==2]: Index
15884 emacs_mule_charset correctly.
15885
158862008-02-01 Dave Love <fx@gnu.org>
15887
15888 * coding.c (Qbig5, Vbig5_coding_system, CATEGORY_MASK_BIG5)
15889 (detect_coding_big5, decode_coding_big5, encode_coding_big5)
15890 (Fdecode_big5_char, Fencode_big5_char): Delete. (Big5 no longer
15891 treated specially.)
15892 (setup_coding_system, coding_category, CATEGORY_MASK_ANY)
15893 (detected_mask): Remove Big5 bits.
15894
158952008-02-01 Kenichi Handa <handa@m17n.org>
15896
15897 The following changes are to make the font rescaling facility
15898 compatible with Emacs 21.
15899
15900 * xfaces.c (Vface_font_rescale_alist): Rename from
15901 Vface_resizing_fonts.
15902 (struct font_name): Rename member resizing_ratio to rescale_ratio.
15903 (font_rescale_ratio): Rename from font_resizing_ratio.
15904 (split_font_name): Set font->rescale_ratio.
15905 (better_font_p): Pay attention to font->rescale_ratio.
15906 (build_scalable_font_name): Likewise. Change RESX, and RESY
15907 fields.
15908 (syms_of_xfaces): Declare Vface_font_rescale_alist as a Lisp variable.
15909
159102008-02-01 Kenichi Handa <handa@m17n.org>
15911
15912 * coding.c (Qutf_16_be_nosig, Qutf_16_be, Qutf_16_le_nosig)
15913 (Qutf_16_le): Remove these variables.
15914 (syms_of_coding): Don't DEFSYM them.
15915 (decode_coding_utf_16): Fix handling of BOM.
15916 (encode_coding_utf_16): Fix handling of BOM.
15917
159182008-02-01 Kenichi Handa <handa@m17n.org>
15919
15920 * fileio.c (Finsert_file_contents): On replacing, before decoding
15921 the file into the work buffer, set point of the work buffer to the end.
15922
159232008-02-01 Dave Love <fx@gnu.org>
15924
15925 * coding.c (Fcheck_coding_systems_region): Fix type errors.
15926
159272008-02-01 Dave Love <fx@gnu.org>
15928
15929 * xterm.c (XTread_socket): Check Lisp types for Vx_keysym_table
15930 and fix C types.
15931
159322008-02-01 Kenichi Handa <handa@m17n.org>
15933
15934 * xdisp.c (SKIP_GLYPHS): New macro.
15935 (set_cursor_from_row): Pay attention to string display properties.
15936
15937 * category.c (copy_category_entry): Fix for the case that RANGE
15938 is an integer.
15939
15940 * xterm.c (x_encode_char): Call ccl_driver with the last arg Qnil.
15941
15942 * w32term.c (w32_encode_char): Call ccl_driver with the last arg Qnil.
15943
159442008-02-01 Kenichi Handa <handa@m17n.org>
15945
15946 * charset.c (Fcharset_id_internal): New function.
15947 (syms_of_charset): Defsubr it.
15948
15949 * coding.c (decode_coding_ccl, encode_coding_ccl): Call ccl_driver
15950 with the last arg charset_list acquired from coding.
15951 (Fdefine_coding_system_internal): For ccl-based coding system, fix
15952 the attribute coding_attr_ccl_valids.
15953
15954 * coding.h (enum define_coding_ccl_arg_index): Set the first
15955 member coding_arg_ccl_decoder to coding_arg_max.
15956
15957 * ccl.h (ccl_driver): Adjust prototype.
15958
15959 * ccl.c (CCL_DECODE_CHAR, CCL_ENCODE_CHAR): New macros.
15960 (ccl_driver): New arg CHARSET_LIST. Use the above macros instead
60612c8f 15961 of DECODE_CHAR, ENCODE_CHAR, CHAR_CHARSET.
aac0c6e3
MR
15962 (Fccl_execute, Fccl_execute_on_string): Call ccl_driver with the
15963 last arg Qnil.
15964
159652008-02-01 Kenichi Handa <handa@m17n.org>
15966
15967 * charset.h (ENCODE_CHAR): If the method is SUBSET or SUPERSET,
15968 call encode_char.
15969
15970 * charset.c (encode_char): Fix handling of methods SUBSET and SUPERSET.
15971
159722008-02-01 Dave Love <fx@gnu.org>
15973
15974 * composite.c (syms_of_composite): Make composition_hash_table weak.
15975
159762008-02-01 Kenichi Handa <handa@m17n.org>
15977
15978 * dispextern.h (check_face_attributes, generate_ascii_font_name)
15979 (font_name_registry): Don't extern them.
15980 (split_font_name_into_vector, build_font_name_from_vector): Extern them.
15981
15982 * fontset.h (Qfontset): Don't extern it.
15983 (new_fontset_from_font_name): Extern it.
15984
15985 * fontset.c: Give 8 extra slots to fontset objects.
15986 (Qfontset_info): New variable.
15987 (syms_of_fontset): Defsym it.
15988 (FONTSET_FALLBACK): New macro.
15989 (fontset_face): Try also the default fontset.
15990 (make_fontset): Realize a fallback fontset from the default fontset.
15991 (generate_ascii_font_name): Move from xfaces.c. Rewritten by
15992 using split_font_name_into_vector and build_font_name_from_vector.
15993 (Fset_fontset_font): Access the elements of font_spec by enum
15994 FONT_SPEC_INDEX. If font_spec is a string, extract the registry
15995 name by using split_font_name_into_vector.
15996 (Fnew_fontset): If no ASCII font is specified in FONTLIST,
15997 generate a proper font name from the fontset name. Update
15998 Vfontset_alias_alist.
15999 (n_auto_fontsets): New variable.
16000 (new_fontset_from_font_name): New function.
16001 (Ffont_info): Store the information about fonts generated from the
16002 default fontset in the first extra slot of the returned char-table.
16003
16004 * xfaces.c (generate_ascii_font_name): Move to fontset.c.
16005 (font_name_registry): Delete function.
16006 (split_font_name_into_vector): New function.
16007 (build_font_name_from_vector): New function.
16008 (font_list): The argument REGISTRY is now a list of registry names.
16009 (choose_face_font): If we are choosing an ASCII font, and ATTRS
16010 specifies an explicit font name, return the name as is. Make a
16011 list of registy names.
16012
16013 * xfns.c (x_set_font, x_create_tip_frame): Adjust for the change
16014 of x_new_fontset.
16015 (Fx_create_frame): Don't call x_new_fontset here. Just use
16016 x_list_fonts to check the existence of fonts.
16017
16018 * xterm.h (x_new_fontset): Adjust prototype.
16019
16020 * xterm.c (x_new_fontset): Change the arg FONTSETNAME to Lisp
16021 string. Use new_fontset_from_font_name to create a fontset from a
16022 font name.
16023
160242008-02-01 Kenichi Handa <handa@m17n.org>
16025
16026 * syntax.c (Vfind_word_boundary_function_table): New name for
16027 Vnext_word_boundary_function_table.
16028 (find-word-boundary-function-table): New name for
16029 next-word-boundary-function-table.
16030
160312008-02-01 Dave Love <fx@gnu.org>
16032
16033 * Makefile.in: Fix some dependencies.
16034
16035 * keymap.c (Fapropos_internal): Don't gcpro apropos_predicate but
16036 set it to nil before returning.
16037
16038 * composite.c (update_compositions): Fix type error.
16039
16040 * syntax.c (skip_chars, skip_syntaxes): Fix type errors.
16041
160422008-02-01 Kenichi Handa <handa@m17n.org>
16043
16044 * xterm.c (x_new_font): Optimize for the case that the font is
16045 already set for the frame.
16046
160472008-02-01 Kenichi Handa <handa@m17n.org>
16048
16049 * chartab.c (char_table_ascii): Check if the char table contents
16050 is sub-char-table or not.
16051 (char_table_set, char_table_set_range): Fix argument to
16052 char_table_ascii.
16053
16054 * coding.c (CATEGORY_MASK_RAW_TEXT): New macro.
16055 (detect_coding_utf_8, detect_coding_utf_16)
16056 (detect_coding_emacs_mule, detect_coding_iso_2022)
16057 (detect_coding_sjis, detect_coding_big5)
16058 (detect_coding_ccl, detect_coding_charset): Change argument MASK
16059 to DETECT_INFO. Update DETECT_INFO and return 1 if the byte
16060 sequence is valid in this coding system. Change callers.
16061 (MAX_ANNOTATION_LENGTH): New macro.
16062 (ADD_ANNOTATION_DATA): New macro.
16063 (ADD_COMPOSITION_DATA): Change argument. Change callers. Call
16064 ADD_ANNOTATION_DATA. Change the format of annotation data.
16065 (ADD_CHARSET_DATA): New macro.
16066 (emacs_mule_char): New argument ID. Change callers.
16067 (decode_coding_emacs_mule, decode_coding_iso_2022)
16068 (decode_coding_sjis, decode_coding_big5, decode_coding_charset):
16069 Produce charset annotation data in coding->charbuf.
16070 (encode_coding_emacs_mule, encode_coding_iso_2022): Pay attention
16071 to charset annotation data in coding->charbuf.
16072 (setup_coding_system): Add CODING_ANNOTATE_CHARSET_MASK
16073 coding->common_flags if the coding system is iso-2022 based and
16074 uses designation.
16075 (produce_composition): Adjust for the new annotation data format.
16076 (produce_charset): New function.
16077 (produce_annotation): Handle charset annotation.
16078 (handle_composition_annotation, handle_charset_annotation): New
16079 functions.
16080 (consume_chars): Handle charset annotation. Utilize the above two
16081 functions.
16082 (encode_coding_object): If SRC_OBJECT and DST_OBJECT are the same
16083 buffer, get the deleted text as a string and set
16084 coding->src_object to that string.
16085 (detect_coding, detect_coding_system): Use the new struct
16086 coding_detection_info.
16087
16088 * coding.h (struct coding_detection_info): New structure.
16089 (struct coding_system): Adjust prototype of the member `detector'.
16090 (CODING_ANNOTATE_CHARSET_MASK): New macro.
16091
160922008-02-01 Kenichi Handa <handa@m17n.org>
16093
16094 * insdel.c (insert_from_gap): Fix argument to offset_intervals.
16095
160962008-02-01 Dave Love <fx@gnu.org>
16097
16098 * keymap.c (apropos_predicate, apropos_accumulate): Declare static.
16099 (Fapropos_internal): Don't gcpro apropos_accumulate. Set result
16100 to new local and nullify apropos_accumulate before returning.
16101 (syms_of_keymap): Staticpro and initialize apropos_accumulate.
16102
161032008-02-01 Kenichi Handa <handa@m17n.org>
16104
16105 * charset.c (Fdefine_charset_internal): Setup charset.fast_map
16106 correctly.
e3eea1fc 16107
aac0c6e3
MR
161082008-02-01 Dave Love <fx@gnu.org>
16109
16110 * fns.c (Flanginfo): Call synchronize_system_time_locale.
16111
161122008-02-01 Kenichi Handa <handa@m17n.org>
16113
16114 The following changes are to make character composition happen
16115 automatically on displaying.
16116
16117 * Makefile.in (lisp, shortlisp): Add composite.elc.
16118
16119 * composite.h (Qauto_composed, Vauto_composition_function)
16120 (Qauto_composition_function): Extern them.
16121
16122 * composite.c (Vcomposition_function_table)
16123 (Qcomposition_function_table): Delete variables.
16124 (Qauto_composed, Vauto_composition_function)
16125 (Qauto_composition_function): New variables.
16126 (run_composition_function): Don't call
16127 compose-chars-after-function.
16128 (update_compositions): Clear `auto-composed' text property.
16129 (compose_chars_in_text): Delete this function.
16130 (syms_of_composite): Staticpro Qauto_composed and
16131 Qauto_composition_function. Declare Vauto_composition_function as
16132 a Lisp variable.
16133
16134 * dispextern.h (enum prop_idx): Add member AUTO_COMPOSED_PROP_IDX.
16135
16136 * xdisp.c (it_props): Add an entry for Qauto_composed.
16137 (handle_auto_composed_prop): New function.
16138
16139 * xselect.c (selection_data_to_lisp_data): Don't call
16140 compose_chars_in_text.
16141
161422008-02-01 Dave Love <fx@gnu.org>
16143
16144 * keyboard.c (read_char): Modify checking around use of
16145 Vkeyboard_translate_table.
16146
16147 * xterm.c (XTread_socket): Check Lisp types for Vx_keysym_table
16148 and fix C types.
16149
161502008-02-01 Kenichi Handa <handa@m17n.org>
16151
16152 * coding.c (decode_coding_utf_8, decode_coding_emacs_mule)
16153 (decode_coding_iso_2022, decode_coding_sjis, decode_coding_big5)
16154 (decode_coding_charset, produce_chars): When eol_type is Qdos, handle
16155 the case that the last byte is '\r' correctly.
16156 (decode_coding): Flush out the unprocessed data correctly.
16157 (decode_coding_gap): Set CODING_MODE_LAST_BLOCK bit of coding->mode.
16158
161592008-02-01 Dave Love <fx@gnu.org>
16160
16161 * xterm.c (XTread_socket): Fix changes for defined keysyms.
16162 Add XK_ISO... case.
16163 (xaw_scroll_callback): Revert last change.
16164
161652008-02-01 Kenichi Handa <handa@m17n.org>
16166
16167 * charset.c (Fset_charset_priority): Update Viso_2022_charset_list.
16168
161692008-02-01 Kenichi Handa <handa@m17n.org>
16170
16171 * xfaces.c (Vface_resizing_fonts): New variable.
16172 (struct font_name): New member `resizing_ratio'.
16173 (font_resizing_ratio): New function.
16174 (split_font_name): Set font->resizing_ratio.
16175 (better_font_p): Pay attention to font->resizing_ratio.
16176 (build_scalable_font_name): Likewise. Don't change POINT_SIZE,
16177 RESX, and RESY fields.
16178 (try_alternative_families): Try scalable fonts if
16179 Vscalable_fonts_allowed is not Qt.
16180 (syms_of_xfaces): Declare Vface_resizing_fonts as a Lisp variable.
16181
161822008-02-01 Dave Love <fx@gnu.org>
16183
16184 * xterm.c (xaw_scroll_callback): Cast correctly.
16185
161862008-02-01 Dave Love <fx@gnu.org>
16187
16188 * keyboard.c (lispy_accent_codes, lispy_accent_keys): Extend.
16189 (lispy_kana_keys): Comment out.
16190 (make_lispy_event) [XK_kana_A]: Comment out.
16191
16192 * xterm.c (xaw_scroll_callback): Cast call_data.
16193 (XTread_socket): Deal with ASCII keysyms.
16194 (syms_of_xterm) <Vx_keysym_table>: Fix args of make_hash_table.
16195
161962008-02-01 Dave Love <fx@gnu.org>
16197
16198 * xterm.c (Vx_keysym_table): New.
16199 (syms_of_xterm): Initialize it.
16200 (XTread_socket): Use it.
16201 From head: Eliminate incorrect optimization that tried to avoid
16202 decoding the output of X*LookupString.
16203 (x_get_font_repertory): Delete charset declaration.
16204
162052008-02-01 Kenichi Handa <handa@m17n.org>
16206
16207 * coding.c (detect_coding_charset): If only ASCII bytes are found,
16208 return 0.
16209 (Fdefine_coding_system_internal): Setup
16210 CODING_ATTR_ASCII_COMPAT (attrs) correctly.
16211
162122008-02-01 Dave Love <fx@gnu.org>
16213
16214 * coding.c (Fcheck_coding_system): Doc fix.
16215
16216 * editfns.c (Finsert_byte): Return a proper value.
16217
162182008-02-01 Kenichi Handa <handa@m17n.org>
16219
16220 * coding.c (decode_coding): Fix args to translate_chars. Pay
16221 attention to Vstandard_translation_table_for_decode.
16222 (encode_coding): Fix args to translate_chars. Pay attention to
16223 Vstandard_translation_table_for_encode.
16224
16225 * data.c (Faset): Check NEWELT by ASCII_CHAR_P, not by
16226 SINGLE_BYTE_CHAR_P.
16227
16228 * editfns.c (general_insert_function): Check VAL by ASCII_CHAR_P,
16229 not by SINGLE_BYTE_CHAR_P.
16230
16231 * fns.c (concat): Check CH by ASCII_CHAR_P, not by
16232 SINGLE_BYTE_CHAR_P.
16233
16234 * insdel.c (copy_text): Check C by ASCII_CHAR_P, not by
16235 SINGLE_BYTE_CHAR_P.
16236
16237 * keymap.c (Ftext_char_description): Check C by ASCII_CHAR_P, not
16238 by SINGLE_BYTE_CHAR_P.
16239
16240 * search.c (Freplace_match): Check C by ASCII_CHAR_P, not by
16241 SINGLE_BYTE_CHAR_P.
16242
162432008-02-01 Dave Love <fx@gnu.org>
16244
16245 * fns.c (Fstring_as_multibyte, Fstring_to_multibyte): Doc fix.
16246
162472008-02-01 Dave Love <fx@gnu.org>
16248
16249 * fns.c (Flanginfo): Fix typo.
16250
16251 * unexelf.c (unexec): Make last change conditional on Irix 6.5.
16252
162532008-02-01 Kenichi Handa <handa@m17n.org>
16254
16255 * coding.c (detect_coding_utf_8, detect_coding_utf_16)
16256 (detect_coding_emacs_mule, detect_coding_iso_2022)
16257 (detect_coding_sjis, detect_coding_big5, detect_coding_ccl): Check
16258 incomplete byte sequence. Don't update *mask when correctly detected.
16259 (decode_coding_sjis): Fix decoding of katakana-jisx0201.
16260 (detect_eol): Delete the argument CODING, and add the argument CATEGORY.
16261 (detect_coding, detect_coding_system): Adjust for the changes above.
16262
162632008-02-01 Kenichi Handa <handa@m17n.org>
16264
16265 * character.c (char_string): Rename from
16266 char_string_with_unification. Pay attention to CHAR_MODIFIER_MASK.
16267 (string_char): Rename from string_char.
16268
16269 * character.h (CHAR_STRING, CHAR_STRING_ADVANCE): Call char_string
16270 if C is greater than MAX_3_BYTE_CHAR.
16271 (STRING_CHAR, STRING_CHAR_AND_LENGTH, STRING_CHAR_ADVANCE): Call
16272 string_char instead of string_char_with_unification.
16273
162742008-02-01 Dave Love <fx@gnu.org>
16275
16276 * coding.c (decode_coding_utf_8): Treat surrogates as invalid.
16277
162782008-02-01 Kenichi Handa <handa@m17n.org>
16279
16280 * keymap.c (push_key_description): Pay attention to force_multibyte.
16281
16282 * regex.c (re_search_2): Fix for the case of unibyte buffer.
16283
162842008-02-01 Dave Love <fx@gnu.org>
16285
16286 * charset.c (define_charset_internal): Rename `supprementary'.
16287
16288 * Makefile.in (lisp, shortlisp): Remove latin-N.
16289
162902008-02-01 Dave Love <fx@gnu.org>
16291
16292 * xfns.c (x_window, x_window): Use use_xim.
16293
16294 * xterm.c (use_xim): Initialize.
16295 (xim_open_dpy, xim_initialize, xim_close_dpy): Use use_xim.
16296 (x_term_init): Maybe set use_xim.
16297
16298 * xterm.h (use_xim) [HAVE_X_I18N]: Declare.
16299
163002008-02-01 Kenichi Handa <handa@m17n.org>
16301
16302 * search.c (search_buffer): Fix case-fold-search of multibyte
16303 characters.
16304 (boyer_moore): Rename the last argument to char_high_bits.
16305
163062008-02-01 Kenichi Handa <handa@m17n.org>
16307
16308 * xdisp.c (display_string): Fix for the case of zero width glyph.
16309
16310 * xfns.c (x_set_font): Change the error message of the case that
16311 x_new_fontset returns Qt.
16312
16313 * xfaces.c (set_lface_from_font_name): Reject the default fontset.
16314 (Finternal_set_lisp_face_attribute): Use signal_error for the
16315 error of invalid fontset.
16316
16317 * xterm.c (x_new_fontset): If FONTSETNAME specifies the default
16318 fontset, return Qt.
16319
163202008-02-01 Dave Love <fx@gnu.org>
16321
16322 * unexelf.c (unexec): Make .got handling not SGI-specific.
16323
16324 * syntax.c (syms_of_syntax) <multibyte-syntax-as-symbol>: Doc fix.
16325
16326 * regex.c: Use `ifdef HAVE_ALLOCA_H', not `if HAVE_ALLOCA_H'.
16327
16328 * keyboard.c (read_key_sequence): Fix type error.
16329
16330 * buffer.c (Fset_buffer_multibyte, Fset_buffer_multibyte): Fix
16331 type error.
16332
16333 * fontset.c (fontset_add): Return Lisp_Object.
16334
163352008-02-01 Dave Love <fx@gnu.org>
16336
16337 * charset.h (charset_ordered_list_tick): Declare extern.
16338
163392008-02-01 Kenichi Handa <handa@m17n.org>
16340
16341 The following changes (and some of 2008-02-01 changes of mine) are
16342 for handling syntax, category, and case conversion for unibyte
16343 characters by converting them to multibyte on the fly. With these
16344 changes, we don't have to setup syntax and case tables for unibyte
16345 characters in each language environment.
16346
16347 * abbrev.c (Fexpand_abbrev): Convert a unibyte character to
16348 multibyte if necessary.
16349
16350 * bytecode.c (Fbyte_code): Likewise.
16351
16352 * character.h (LEADING_CODE_LATIN_1_MIN)
16353 (LEADING_CODE_LATIN_1_MAX): New macros.
16354 (unibyte_to_multibyte_table): Extern it.
16355 (unibyte_char_to_multibyte): New macro.
16356 (MAKE_CHAR_MULTIBYTE): Use unibyte_to_multibyte_table.
16357 (CHAR_LEADING_CODE): New macro.
16358 (FETCH_STRING_CHAR_AS_MULTIBYTE_ADVANCE): New macro.
16359
16360 * character.c (unibyte_to_multibyte_table): New variable.
16361 (unibyte_char_to_multibyte): Move to character.h and define as macro.
16362 (multibyte_char_to_unibyte): If C is an eight-bit character,
16363 convert it to the corresponding byte value.
16364
16365 * charset.c (Fset_unibyte_charset): If the dimension of CHARSET is
16366 not 1, signals an error. Update the elements of
16367 unibyte_to_multibyte_table.
16368 (init_charset_once): Initialize unibyte_to_multibyte_table.
16369 (syms_of_charset): Define the charset `iso-8859-1'.
16370
16371 * cmds.c (internal_self_insert): In a multibyte buffer, insert C
16372 as is without converting it to unibyte. In a unibyte buffer,
16373 convert C to multibyte before checking the syntax.
16374
16375 * lisp.h (unibyte_char_to_multibyte): Delete extern.
16376
16377 * minibuf.c (Fminibuffer_complete_word): Use the macro
16378 FETCH_STRING_CHAR_AS_MULTIBYTE_ADVANCE.
16379
16380 * regex.h (struct re_pattern_buffer): New member target_multibyte.
16381
16382 * regex.c (RE_TARGET_MULTIBYTE_P): New macro.
16383 (GET_CHAR_BEFORE_2): Check target_multibyte, not multibyte. If
16384 that is zero, convert an eight-bit char to multibyte.
16385 (MAKE_CHAR_MULTIBYTE, CHAR_LEADING_CODE): New dummy new macros for
16386 non-emacs case.
16387 (PATFETCH): Convert an eight-bit char to multibyte.
16388 (HANDLE_UNIBYTE_RANGE): New macro.
16389 (regex_compile): Setup the compiled pattern for multibyte chars
16390 even if the given regex string is unibyte. Use PATFETCH_RAW
16391 instead of PATFETCH in many places. To handle `charset'
16392 specification of unibyte, call HANDLE_UNIBYTE_RANGE. Use bitmap
16393 only for ASCII chars.
16394 (analyse_first) <exactn>: Simplify because the compiled pattern
16395 is multibyte.
16396 <charset_not>: Setup fastmap from bitmap only for ASCII chars.
16397 <charset>: Use CHAR_LEADING_CODE to get leading codes.
16398 <categoryspec>: If multibyte, setup fastmap only for ASCII chars here.
16399 (re_compile_fastmap) [emacs]: Call analyse_first with the arg
16400 multibyte always 1.
16401 (re_search_2): In emacs, set the locale variable multibyte to 1,
16402 otherwise to 0. New local variable target_multibyte. Check it
16403 to decide the multibyteness of STR1 and STR2. If
16404 target_multibyte is zero, convert unibyte chars to multibyte
16405 before translating and checking fastmap.
16406 (TARGET_CHAR_AND_LENGTH): New macro.
16407 (re_match_2_internal): In emacs, set the locale variable multibyte
16408 to 1, otherwise to 0. New local variable target_multibyte. Check
16409 it to decide the multibyteness of STR1 and STR2. Use
16410 TARGET_CHAR_AND_LENGTH to fetch a character from D.
16411 <charset, charset_not>: If multibyte is nonzero, check fastmap
16412 only for ASCII chars. Call bcmp_translate with
16413 target_multibyte, not with multibyte.
16414 <begline>: Declare the local variable C as `unsigned'.
16415 (bcmp_translate): Change the last arg name to target_multibyte.
16416
16417 * search.c (compile_pattern_1): Don't adjust the multibyteness of
16418 the regexp pattern and the matching target. Set cp->buf.multibyte
16419 to the multibyteness of the regexp pattern. Set
16420 cp->but.target_multibyte to the multibyteness of the matching target.
16421 (wordify): Use FETCH_STRING_CHAR_AS_MULTIBYTE_ADVANCE instead of
16422 FETCH_STRING_CHAR_ADVANCE.
16423 (Freplace_match): Convert unibyte chars to multibyte.
16424
16425 * syntax.c (char_quoted, back_comment, scan_words)
16426 (Fforward_comment, scan_lists, Fbackward_prefix_chars)
16427 (scan_sexps_forward): Use FETCH_CHAR_AS_MULTIBYTE to convert
16428 unibyte chars to multibyte.
16429 (skip_chars): Delete the arg syntaxp, and move the code for
16430 handling syntaxes to skip_syntaxes. Change callers.
16431 Fix the case that the multibyteness of STRING and the current
16432 buffer doesn't match.
16433 (skip_syntaxes): New function.
16434 (SYNTAX_WITH_MULTIBYTE_CHECK): Check C by ASCII_CHAR_P, not by
16435 SINGLE_BYTE_CHAR_P.
16436
164372008-02-01 Kenichi Handa <handa@m17n.org>
16438
16439 * xfaces.c (QCfontset): New variable.
16440 (LFACE_FONTSET): New macro.
16441 (check_lface_attrs): Check also LFACE_FONTSET_INDEX.
16442 (set_lface_from_font_name): Setup LFACE_FONTSET (lface).
16443 (Finternal_set_lisp_face_attribute)
16444 (Finternal_get_lisp_face_attribute): Handle QCfontset.
16445 (lface_same_font_attributes_p): Fix checking of LFACE_FONT_INDEX,
16446 check also LFACE_FONTSET_INDEX.
16447 (face_fontset): Check attrs[LFACE_FONTSET_INDEX], not
16448 attrs[LFACE_FONT_INDEX].
16449 (syms_of_xfaces): Intern and staticpro QCfontset.
16450
16451 * dispextern.h (enum lface_attribute_index): New member
16452 LFACE_FONTSET_INDEX.
16453
16454 * fns.c (base64_encode_1): Handle eight-bit chars correctly.
16455
164562008-02-01 Kenichi Handa <handa@m17n.org>
16457
16458 * coding.c (coding_set_destination): Fix coding->destination for
16459 the case converting a region.
16460 (encode_coding_utf_8): Encode eight-bit chars as single byte.
16461 (encode_coding_object): Fix coding->dst_pos and
16462 coding->dst_pos_byte for the case converting a region.
16463
16464 * insdel.c (insert_from_gap): Make it work even if PT != GTP.
16465
16466 * character.h (BYTE8_STRING): New macro.
16467
16468 * fns.c (base64_decode_1): Insert eight-bit chars correctly.
16469
164702008-02-01 Kenichi Handa <handa@m17n.org>
16471
16472 * xdisp.c (get_next_display_element): Don't display unibyte 8-bit
16473 characters by octal form.
16474
16475 * abbrev.c (Fexpand_abbrev): Fix for the multibyte case.
16476
16477 * buffer.h (_fetch_multibyte_char_len): Delete extern.
16478 (FETCH_MULTIBYTE_CHAR, BUF_FETCH_MULTIBYTE_CHAR): Don't use
16479 _fetch_multibyte_char_len.
16480 (FETCH_CHAR_AS_MULTIBYTE): New macro.
16481
16482 * casetab.c (set_canon, set_identity, shuffle): Simplify.
16483
16484 * casefiddle.c (casify_object): Simplify. Handle the case that
16485 the case conversion change the byte length.
16486 (casify_region): Likewise.
16487
16488 * character.h (MAKE_CHAR_UNIBYTE, MAKE_CHAR_MULTIBYTE): New macros.
16489
16490 * character.c (_fetch_multibyte_char_len): Delete this variable.
16491 (syms_of_character): Setup Vprintable_chars.
16492
16493 * editfns.c (Fchar_equal): Fix for the unibyte case.
16494 (Finsert_byte): New function.
16495 (syms_of_editfns): Defsubr it.
16496
16497 * keyboard.c (read_key_sequence): Use ~CHAR_MODIFIER_MASK instead
16498 of direct code 0x3ffff.
16499
16500 * search.c (Freplace_match): Fix for the unibyte case.
16501
165022008-02-01 Kenichi Handa <handa@m17n.org>
16503
16504 * lread.c (safe_to_load_p): Fix the logic.
16505
16506 * syntax.c (scan_words): Don't treat characters belonging to
16507 different scripts as constituting a word.
16508
16509 * editfns.c (Fformat): Use ASCII_CHAR_P, not SINGLE_BYTE_CHAR_P.
16510
16511 * fontset.c (Fset_fontset_font): Treat `ascii' as charset, not script.
16512
16513 * emacs.c (main): In the case of --unibyte, instead of aborting on
16514 finding non-empty buffer, make it unibyte.
16515
165162008-02-01 Kenichi Handa <handa@m17n.org>
16517
16518 * xterm.c (x_new_fontset): Call `create-fontset-from-ascii-font'
16519 to create a fontset.
16520
165212008-02-01 Dave Love <fx@gnu.org>
16522
16523 * character.c (Funibyte_char_to_multibyte): Doc fix.
16524
16525 * xfns.c [HAVE_STDLIB_H]: Fix last change.
16526
165272008-02-01 Kenichi Handa <handa@m17n.org>
16528
16529 * fontset.c (fontset_add): Make the type `int'.
16530 (fontset_id_valid_p): Define it if FONTSET_DEBUG is defined.
16531
16532 * character.c (unibyte_char_to_multibyte)
16533 (multibyte_char_to_unibyte, Funibyte_char_to_multibyte): Refer to
16534 charset_unibyte, not charset_primary.
16535
16536 * charset.h (charset_unibyte): Extern it instead of charset_primary.
16537
16538 * charset.c (charset_unibyte): Rename from charset_primary.
16539 (Funibyte_charset): Rename from Fprimary_charset.
16540 (Fset_unibyte_charset): Rename from Fset_primary_charset.
16541 (syms_of_charset): Adjust for the above changes.
16542
16543 * w32term.c (x_produce_glyphs): Use ASCII_CHAR_P, not
16544 SINGLE_BYTE_CHAR_P. Fix the logic of handling non-ASCII char when
16545 it->multibyte_p is zero.
16546
16547 * lisp.h (nonascii_insert_offset, Vnonascii_translation_table):
16548 Delete extern.
16549
165502008-02-01 Kenichi Handa <handa@m17n.org>
16551
16552 * coding.c (Fdefine_coding_system_internal): Fix category setting
16553 for a coding system of type iso-2022.
16554
165552008-02-01 Kenichi Handa <handa@m17n.org>
16556
16557 * fontset.h (FS_LOAD_FONT): Call fs_load_font with the arg CHARSET -1.
16558
165592008-02-01 Kenichi Handa <handa@m17n.org>
16560
16561 * syntax.c (Vnext_word_boundary_function_table): New variable.
16562 (next-word-boundary-function-table): Declare it as a Lisp variable
16563 in syms_of_syntax.
16564 (scan_words): Call functions in Vnext_word_boundary_function_table
16565 if any.
16566
16567 * xterm.c (x_load_font): Initialize fontp->fontset to -1.
16568
16569 * fontset.c (fs_load_font): If fontp->charset is not negative,
16570 return fontp without setting its members.
16571
165722008-02-01 Dave Love <fx@gnu.org>
16573
16574 * xfns.c [HAVE_STDLIB_H]: Change logic (instead of fixing typo).
16575
16576 * m/sparc.h (HAVE_ALLOCA): Delete.
16577
16578 * s/irix6-5.h: Don't include strings.h.
16579 (bcopy, bzero, bcmp): Don't undef.
16580
16581 * s/irix6-0.h (bcopy, bzero, bcmp): Don't undef.
16582
16583 * s/usg5-4.h (NO_SIOCTL_H): Don't define.
16584 (TIOCSIGSEND): Don't test IRIX6.
16585 (bcopy, bzero, bcmp): Define conditionally.
16586
165872008-02-01 Kenichi Handa <handa@m17n.org>
16588
16589 * buffer.c (Qas, Qmake, Qto): New variables.
16590 (Fset_buffer_multibyte): New optional arg METHOD. Change caller.
16591 (syms_of_buffer): Intern and staticpro Qas, Qmake, and Qto.
16592
16593 * callproc.c (Fcall_process): Don't call insert_1_both directly if
16594 we are inserting a process output into a multibyte buffer.
16595
16596 * character.h (CHAR_TO_BYTE8): If C is not eight-bit char, call
16597 multibyte_char_to_unibyte.
16598
16599 * character.c (Funibyte_char_to_multibyte): If C can't be decoded
16600 by the primary charset, make it eight-bit char.
16601 (Fmultibyte_char_to_unibyte): Call CHAR_TO_BYTE8.
16602
16603 * charset.c (charset_eight_bit, Qeight_bit_control): New variables.
16604 (charset_8_bit__control, charset_8_bit_graphic)
16605 (Qeight_bit_control, Qeight_bit_graphic): Delete these variables.
16606 (define_charset_internal): New function.
16607 (syms_of_charset): Call define_charset_internal for pre-defined
16608 charsets.
16609
16610 * charset.h (charset_8_bit): Extern it.
16611
16612 * coding.c (make_conversion_work_buffer): Adjust for the change
16613 of Fset_buffer_multibyte.
16614 (encode_coding_raw_text): Increment p0 in the loop.
16615
16616 * lisp.h (Fset_buffer_multibyte): Adjust prototype.
16617
16618 * xdisp.c (setup_echo_area_for_printing, set_message_1): Adjust
16619 for the change of Fset_buffer_multibyte.
16620
16621 * fns.c (Fstring_to_multibyte): New function.
16622 (syms_of_fns): Declare Fstring_to_multibyte as Lisp subroutine.
16623
166242008-02-01 Dave Love <fx@gnu.org>
16625
16626 * xfns.c (x_put_x_image): Declare args.
16627
16628 * xfaces.c (font_name_registry, choose_face_font): Delete unused vars.
16629 (try_font_list): Declare an arg.
16630
16631 * xdisp.c (message2_nolog, set_message): Declare an arg.
16632
16633 * terminfo.c (tparam): Declare an arg. Use P_ to declare tparm.
16634
16635 * syntax.c (scan_sexps_forward): Declare an arg.
16636
16637 * scroll.c (calculate_scrolling, calculate_direct_scrolling):
16638 Declare an arg.
16639
16640 * lisp.h (Fnew_fontset): Declare.
16641
16642 * keymap.c (push_key_description): Call CHARACTERP correctly.
16643
16644 * fontset.c (fontset_add): Declare args. Call make_number correctly.
16645 (face_for_char): Delete unused vars.
16646 (Fset_fontset_font): Doc fix. Delete unused vars.
16647
16648 * doc.c (Fsubstitute_command_keys): Delete unused vars.
16649
16650 * composite.c (update_compositions): Declare arg.
16651
16652 * cm.c (calccost, cmgoto): Declare args.
16653
16654 * charset.c: Remove `emacs' conditional. Doc fixes.
16655 (map_char_table_for_charset): Declare.
16656
16657 * character.c (syms_of_character) <translation-table-vector>: Doc fix.
16658
16659 * ccl.c: Remove `emacs' conditional.
16660
166612008-02-01 Kenichi Handa <handa@m17n.org>
16662
16663 The following changes are to allow specifying multiple font
16664 patterns for a character range (specified by script or charset).
16665
16666 * Makefile.in (abbrev.o): Depend on syntax.h.
16667 (xfaces.o): Depend on charset.h.
16668
16669 * alloc.c (Fmake_string): Use ASCII_CHAR_P, not
16670 SINGLE_BYTE_CHAR_P.
16671
16672 * ccl.c (Fccl_execute_on_string): Add `const' to local variables.
16673
16674 * character.h (Vchar_script_table): Extern it.
16675
16676 * character.c (Vscript_alist): Delete.
16677 (Vchar_script_table, Qchar_script_table): New variable.
16678 (syms_of_character): Declare Vchar_script_table as a lisp variable
16679 and initialize it.
16680
16681 * chartab.c (Fmake_char_table): Doc fix. If PURPOSE doesn't
16682 have property char-table-extra-slots, make no extra slot.
16683
16684 * dispextern.h (struct face): Delete member `charset'.
16685 (FACE_SUITABLE_FOR_CHAR_P, FACE_FOR): Use ASCII_CHAR_P, not
16686 SINGLE_BYTE_CHAR_P.
16687 (choose_face_font, lookup_non_ascii_face, font_name_registry):
16688 Add prototypes.
16689 (lookup_face, lookup_named_face, lookup_derived_face): Fix prototype.
16690 (generate_ascii_font_name): Rename from generate_ascii_font.
16691
16692 * fontset.h (get_font_repertory_func): New prototype.
16693 (make_fontset_for_ascii_face, fs_load_font): Fix prototypes.
16694 (FS_LOAD_FONT): Call fs_load_font with the 3rd arg charset_ascii.
16695
16696 * fontset.c (Qprepend, Qappend): New variables.
16697 (FONTSET_CHARSET_ALIST, FONTSET_FACE_ALIST): Delete.
16698 (FONTSET_NOFONT_FACE, FONTSET_REPERTORY): New macros.
16699 (FONTSET_REF): Optimize if FONTSET is Vdefault_fontset.
16700 (FONTSET_REF_AND_RANGE, FONTSET_ADD): New macros.
16701 (fontset_ref_and_range, fontset_add, reorder_font_vector)
16702 (load_font_get_repertory): New functions.
16703 (fontset_set): Delete.
16704 (fontset_face): New arg FACE. Return face ID, not face.
16705 Complete re-write to handle new fontset structure. Change caller.
16706 (free_face_fontset): Use ASET istead of AREF (X) = Y.
16707 (face_for_char): Don't call lookup_face.
16708 (make_fontset_for_ascii_face): New arg FACE.
16709 (fs_load_font): New arg CHARSET_ID. Don't check
16710 Vfont_encoding_alist here.
16711 (find_font_encoding): New function.
16712 (list_fontsets): Use STRINGP, not ! NILP.
16713 (accumulate_script_ranges): New function.
16714 (Fset_fontset_font, Fnew_fontset, Ffontset_info): Completely
16715 re-written to handle new fontset structure.
16716 (Ffontset_font): Return a copy of element.
16717 (syms_of_fontset): Define symbols Qprepend and Qappend. Fix
16718 docstring of font-encoding-alist.
16719
16720 * lisp.h (CHAR_TABLE_REF): Remove unnecessary check (IDX >= 0).
16721 (Fset_fotset_font): Fix arguments to 5.
16722
16723 * msdos.c (XMenuActivate): Adjust for the change of lookup_derived_face.
16724
16725 * xdisp.c (message_dolog, set_message_1, extend_face_to_end_of_line):
16726 Use ASCII_CHAR_P, not SINGLE_BYTE_CHAR_P.
16727 (highlight_trailing_whitespace): Adjust for the change of
16728 lookup_named_face.
16729
16730 * xfaces.c: Include charset.h.
16731 (load_face_font): Delete argument C. Change caller.
16732 (generate_ascii_font_name): Rename from generate_ascii_font.
16733 (font_name_registry): New function.
16734 (cache_face): Store ascii faces before non-ascii faces in buckets.
16735 (lookup_face): Delete arguments C and BASE_FACE. Change caller.
16736 Lookup only ascii faces.
16737 (lookup_non_ascii_face): New function.
16738 (lookup_named_face): Delete argument C. Change caller.
16739 (lookup_derived_face): Delete argument C. Change caller.
16740 (try_font_list): New arg PATTERN. Change caller. If PATTERN is
16741 a string, just call font_list with it.
16742 (choose_face_font): Delete arguments FACE and C. New arg
16743 FONT_SPEC. Change caller.
16744 (realize_face, realize_x_face): Delete arguments C and BASE_FACE.
16745 Change caller.
16746 (realize_non_ascii_face): New function.
16747 (realize_x_face): Call load_face_font here.
16748 (realize_tty_face): Delete argument C. Change caller.
16749 (compute_char_face): If CH is not ascii, call FACE_FOR_CHAR to
16750 get a face ID.
16751 (dump_realized_face): Don't print charset of FACE.
16752
16753 * xfns.c (x_set_font): Always call x_new_fontset and
16754 store_frame_parameter.
16755 (Fx_create_frame): Call x_new_fontset, not x_new_font.
16756 (syms_of_xfns): Set get_font_repertory_func to x_get_font_repertory.
16757
16758 * xterm.h (x_get_font_repertory): Extern it.
16759
16760 * xterm.c (x_produce_glyphs): Use ASCII_CHAR_P, not
16761 SINGLE_BYTE_CHAR_P. Fix the logic of handling non-ASCII char when
16762 it->multibyte_p is zero.
16763 (XTread_socket): Use ASCII_CHAR_P, not SINGLE_BYTE_CHAR_P.
16764 (x_new_fontset): If FONTSETNAME doesn't match any existing
16765 fontsets, create a new one.
16766 (x_get_font_repertory): New function.
16767
167682008-02-01 Kenichi Handa <handa@m17n.org>
16769
16770 * coding.c (Ffind_coding_systems_region_internal): Detect an
16771 ASCII only string correctly.
16772
16773 * lread.c (Fload): Don't load with Qload_force_doc_strings t if
16774 version is 0.
16775
167762008-02-01 Kenichi Handa <handa@m17n.org>
16777
16778 * lread.c: Include "coding.h".
16779 (Qget_emacs_mule_file_char, Qload_force_doc_strings)
16780 (load_each_byte, unread_char): New variables.
16781 (readchar_backlog): Delete.
16782 (readchar): Return a character unless load_each_byte is nonzero.
16783 Handle the case that readcharfun is Qget_emacs_mule_file_char or a
16784 cons. If unread_char is not -1, simply return it.
16785 (unreadchar): Handle the case that readcharfun is
16786 Qget_emacs_mule_file_char or a cons. Set unread_char if necessary.
16787 (read_multibyte): Delete.
16788 (readbyte_for_lambda, readbyte_from_file, readbyte_from_string)
16789 (read_emacs_mule_char): New functions.
16790 (Fload): Even if the file doesn't have the extension ".elc", if
16791 safe_to_load_p returns a positive version number, assume that the
16792 file contains bytecompiled code. If the version is less than 22,
16793 load the file while decoding multibyte sequences by emacs-mule.
16794 (readevalloop): Don't use readchar_backlog.
16795 (Fread): Likewise. Pay attention to the case that STREAM is a cons.
16796 (Fread_from_string): Pay attention to the case that STREAM is a cons.
16797 (read_escape): Delete the arg BYTEREP.
16798 (read1): Set load_each_byte to 1 temporarily while handling
16799 #@NUMBER. Don't call read_multibyte.
16800 (read_vector): Call Fread with a cons. If readcharfun is
16801 Qget_emacs_mule_file_char, decode the read string by emacs-mule.
16802 (read_list): If doc_reference is 2, make the cdr part string as unibyte.
16803 (syms_of_lread): Intern and staticpro Qget_emacs_mule_file_char
16804 and Qload_force_doc_strings.
16805
168062008-02-01 Kenichi Handa <handa@m17n.org>
16807
16808 * xdisp.c (face_before_or_after_it_pos): Call
16809 FETCH_MULTIBYTE_CHAR with byte postion, not char position.
16810
168112008-02-01 Kenichi Handa <handa@m17n.org>
16812
16813 * character.h (TRAILING_CODE_P): New macro.
16814 (MAYBE_UNIFY_CHAR): Adjust for the change of Funify_charset.
16815 (string_char_with_unification): Fix prototype.
16816 (Vscript_alist): Extern it.
16817
16818 * character.c (Vscript_alist): New variable.
16819 (string_char_with_unification, str_as_unibyte)
16820 (string_escape_byte8): Add `const' to local variables.
16821 (syms_of_character): Declare script-alist as a Lisp variable.
16822
16823 * charset.h (Vcharset_ordered_list): Extern it.
16824 (charset_ordered_list_tick): Extern it.
16825 (EMACS_MULE_LEADING_CODE_PRIVATE_11)
16826 (EMACS_MULE_LEADING_CODE_PRIVATE_12)
16827 (EMACS_MULE_LEADING_CODE_PRIVATE_21)
16828 (EMACS_MULE_LEADING_CODE_PRIVATE_22): New macros.
16829 (Funify_charset): Adjust for the change of Funify_charset.
16830
16831 * charset.c (charset_ordered_list_tick): New variable.
16832 (Fdefine_charset_internal): Increment charset_ordered_list_tick.
16833 (Funify_charset): New optional arg DEUNIFY. If it is non-nil,
16834 deunify intead of unify a charset.
16835 (string_xstring_p): Add `const' to local variables.
16836 (find_charsets_in_text): Add `const' to arguments and local variables.
16837 (encode_char): Adjust for the change of Funify_charset. Fix
16838 detecting of invalid code.
16839 (Fset_charset_priority): Increment charset_ordered_list_tick.
16840 (Fmap_charset_chars): Fix handling of default value for FROM_CODE
16841 and TO_CODE.
16842
16843 * coding.c (LEADING_CODE_PRIVATE_11, LEADING_CODE_PRIVATE_12)
16844 (LEADING_CODE_PRIVATE_21, LEADING_CODE_PRIVATE_22): Delete macros.
16845 Changed callers to use EMACS_MULE_LEADING_CODE_PRIVATE_11, etc.
16846 (decode_coding_ccl, consume_chars)
16847 (Ffind_coding_systems_region_internal)
16848 (Fcheck_coding_systems_region): Add `const' to local variables.
16849
16850 * print.c (print_object): Use octal form for printing the
16851 contents of a bool vector.
16852
168532008-02-01 Dave Love <fx@gnu.org>
16854
16855 * lread.c (Fload) <!load_dangerous_libraries>: Don't leak fd.
16856 <version == 20>: Refuse to load.
16857
168582008-02-01 Dave Love <fx@gnu.org>
16859
16860 * fns.c: Move coding.h.
16861 (Qcodeset, Qdays, Qmonths): New.
16862 (concat): Use CHARACTERP instead of INTEGERP.
16863 (Flocale_codeset): Delete.
16864 (Flanginfo): New function.
16865 (syms_of_fns): Change accordingly.
16866
16867 * coding.c (adjust_coding_eol_type): Fix eol_type/eol_seen mixup.
16868
168692008-02-01 Dave Love <fx@gnu.org>
16870
16871 * casetab.c (init_casetab_once, init_casetab_once): Fix
16872 CHAR_TABLE_SET call.
16873
16874 * category.c (Fmodify_category_entry): Fix CATEGORY_MEMBER call.
16875
16876 * character.c (syms_of_character): Fix CHAR_TABLE_SET call.
16877
16878 * charset.c (Fmap_charset_chars): Check args. Convert Lisp types.
16879 (load_charset_map, Fdeclare_equiv_charset, Fencode_char)
16880 (Fset_charset_priority, syms_of_charset): Convert Lisp types.
16881
16882 * charset.h (CHECK_CHARSET_GET_ID): Use XINT on AREF result.
16883
16884 * coding.c (ENCODE_DESIGNATION, decode_eol)
16885 (make_conversion_work_buffer, code_conversion_restore)
16886 (Fdefine_coding_system_internal): Convert Lisp types.
16887 (code_conversion_restore): Use EQ, not ==.
16888 (Fencode_coding_string): Fix code_convert_string call.
16889
16890 * coding.h (code_convert_region): Fix prototype.
16891
16892 * dispextern.h (redraw_frame, redraw_garbaged_frames): Remove.
16893
16894 * fontset.c (fontset_ref, fontset_set, fs_load_font)
16895 (Ffontset_info): Convert Lisp types.
16896
16897 * syntax.h (SYNTAX_ENTRY_INT): Don't use make_number.
16898
16899 * xterm.c (note_mouse_movement): Fix call of window_from_coordinates.
16900
16901 * xdisp.c (display_mode_element): Fix call of Fset_text_properties.
16902
16903 * chartab.c: Include "...h", not <...h> in some cases.
16904
16905 * callproc.c (Fcall_process): Remove unused variables.
16906
169072008-02-01 Dave Love <fx@gnu.org>
16908
16909 * coding.c (Fset_coding_system_priority): Allow null arg list.
16910
169112008-02-01 Dave Love <fx@gnu.org>
16912
16913 * minibuf.c (Fminibuffer_complete_word): Remove unused var.
16914 (Fself_insert_and_exit): Use CHARACTERP.
16915
16916 * callproc.c (Fcall_process): Remove unused vars.
16917
16918 * xterm.c (XTread_socket): Add extra dead keysyms.
16919
16920 * xdisp.c (decode_mode_spec_coding): Use CHARACTERP.
16921
16922 * dispextern.h: Remove prototypes for redraw_frame,
16923 redraw_garbaged_frames.
16924
16925 * cmds.c (Fself_insert_command): Use CHARACTERP.
16926
16927 * chartab.c (make_sub_char_table): Remove unused var.
16928 (Fset_char_table_default, Fmap_char_table): Doc fix.
16929
16930 * keymap.c (access_keymap): Remove generic char code.
16931 (push_key_description): Use CHARACTERP.
16932
169332008-02-01 Dave Love <fx@gnu.org>
16934
16935 * charset.c: Doc fixes.
16936 (Funify_charset): Extra checking.
16937
169382008-02-01 Dave Love <fx@gnu.org>
16939
16940 * lread.c: Remove some unused variables.
16941 (safe_to_load_p): If safe, return the magic number version byte.
16942 (Fload): Maybe use load-with-code-conversion.
16943
169442008-02-01 Kenichi Handa <handa@m17n.org>
16945
16946 * category.c (Fmodify_category_entry): Don't modify the contents
16947 of category_set for characters out of the range. Avoid
16948 unnecessary modification.
16949
16950 * character.h (MAYBE_UNIFY_CHAR): Adjust for the change of
16951 Vchar_unify_table. The default value of the table is now nil.
16952
16953 * character.c (syms_of_character): Setup Vchar_width_table for
16954 eight-bit-control and raw-byte chars.
16955
16956 * charset.h (enum define_charset_arg_index): Delete
16957 charset_arg_parents and add charset_arg_subset and
16958 charset_arg_superset.
16959 (enum charset_attr_index): Delete charset_parents and add
16960 charset_subset and charset_superset.
16961 (enum charset_method): Delete CHARSET_METHOD_INHERIT and add
16962 CHARSET_METHOD_SUBSET and CHARSET_METHOD_SUPERSET.
16963 (CHARSET_ATTR_PARENTS, CHARSET_PARENTS): Delete.
16964 (CHARSET_ATTR_SUBSET, CHARSET_ATTR_SUPERSET, CHARSET_SUBSET)
16965 (CHARSET_SUPERSET): New macros.
16966 (charset_work): Extern it.
16967 (ENCODE_CHAR): Use charset_work.
16968 (CHAR_CHARSET_P): Adjust for the change of encoder format.
16969 (map_charset_chars): Extern it.
16970
16971 * charset.c (load_charset_map): Set the default value of encoder
16972 and deunifier char-tables to nil.
16973 (map_charset_chars): Change argument. Change callers. Use
16974 map_char_table_for_charset instead of map_char_table.
16975 (Fmap_charset_chars): New optional args from_code and to_code.
16976 (Fdefine_charset_internal): Adjust for the change of
16977 `define-charset' (:parents -> :subset or :superset).
16978 (charset_work): New variable.
16979 (encode_char, syms_of_charset): Adjust for the change of
16980 Fdefine_charset_internal.
16981 (Ffind_charset_string): Setup the vector `charsets' correctly.
16982
16983 * chartab.c (sub_char_table_ref_and_range): New arg default. Fix
16984 the previous change.
16985 (char_table_ref_and_range): Adjust for the above change.
16986 (map_sub_char_table_for_charset): New function.
16987 (map_char_table_for_charset): New function.
16988
16989 * keymap.c (describe_vector): Handle a char-table directly here.
16990 (describe_char_table): Delete.
16991
16992 * lisp.h (map_charset_chars): Delete.
16993
169942008-02-01 Dave Love <fx@gnu.org>
16995
16996 * fns.c (count_combining): Comment out (unused).
16997 (Flocale_codeset): New.
16998 (syms_of_fns): Defsubr it.
16999
17000 * config.in (HAVE_PTY_H, HAVE_SIZE_T, HAVE_LANGINFO_CODESET): New.
17001 (size_t): Remove.
17002
170032008-02-01 Dave Love <fx@gnu.org>
17004
17005 * Makefile.in (chartab.o): Depend on charset.h.
17006
170072008-02-01 Kenichi Handa <handa@m17n.org>
17008
17009 * character.c (syms_of_character): Set the default value of
17010 Vprintable_chars to Qnil.
17011
170122008-02-01 Dave Love <fx@gnu.org>
17013
17014 * Makefile.in (lisp, shortlisp): Change indian.elc to indian.el.
17015
170162008-02-01 Kenichi Handa <handa@m17n.org>
17017
17018 * charset.c (load_charset_map): Handle the case that from < to
17019 correctly.
17020
17021 * coding.c (encode_coding_emacs_mule, encode_coding_iso_2022)
17022 (encode_coding_sjis, encode_coding_big5, encode_coding_charset):
17023 Pay attention to raw-8-bit chars.
17024
170252008-02-01 Kenichi Handa <handa@m17n.org>
17026
17027 * Makefile.in (lisp, shortlisp): Change chinese.elc to chinese.el.
17028 It is not bytecompiled now.
17029
17030 * charset.c (charset_jisx0201_roman, charset_jisx0208_1978)
17031 (charset_jisx0208): New variables.
17032 (Fdefine_charset_internal): Setup them if appropriate.
17033 (init_charset_once): Initialize them to -1.
17034
17035 * charset.h (charset_jisx0201_roman, charset_jisx0208_1978)
17036 (charset_jisx0208): Extern them.
17037
17038 * coding.c (CODING_ISO_FLAG_USE_ROMAN): New macro.
17039 (CODING_ISO_FLAG_USE_OLDJIS): New macro.
17040 (CODING_ISO_FLAG_FULL_SUPPORT): Change macro definition.
17041 (setup_iso_safe_charsets): Fix arguments to Fassq.
17042 (DECODE_DESIGNATION, ENCODE_ISO_CHARACTER_DIMENSION1)
17043 (ENCODE_ISO_CHARACTER_DIMENSION2): Pay attention to
17044 CODING_ISO_FLAG_USE_ROMAN and CODING_ISO_FLAG_USE_OLDJIS.
17045 (encode_coding_iso_2022): Change the 1st arg to
17046 ENCODE_ISO_CHARACTER to a variable.
17047
170482008-02-01 Kenichi Handa <handa@m17n.org>
17049
17050 * charset.h (enum define_charset_arg_index): New enums
17051 charset_arg_min_code and charset_arg_max_code.
17052 (struct charset): New member char_index_offset.
17053
17054 * charset.c (CODE_POINT_TO_INDEX, INDEX_TO_CODE_POINT):
17055 Take charset->char_index_offset into account.
17056 (Fdefine_charset_internal): Handle args[charset_arg_min_code] and
17057 args[charset_arg_max_code]. Setup charset.char_index_offset.
17058 (syms_of_charset): Fix args to Fdefine_charset_internal.
17059
170602008-02-01 Dave Love <fx@gnu.org>
17061
17062 * coding.c (decode_coding_utf_8): Reject overlong sequences.
17063
170642008-02-01 Dave Love <fx@gnu.org>
17065
17066 * coding.c: Doc fixes.
17067 (Fcoding_system_aliases): Fix return value.
17068 (Qmac): Remove (duplicated) definition.
17069
170702008-02-01 Dave Love <fx@gnu.org>
17071
362654a6
JB
17072 * charset.c (Fcharset_priority_list, Fset_charset_priority):
17073 New functions.
aac0c6e3
MR
17074
17075 * character.c (Fstring): Doc fix.
17076
17077 * charset.c (Fdefine_charset_alias): Update Vcharset_list.
17078
362654a6 17079 * fontset.c (Ffontset_info): Doc fix. Return charset names, not ids.
aac0c6e3
MR
17080 (font-encoding-alist): Doc fix.
17081
170822008-02-01 Dave Love <fx@gnu.org>
17083
17084 * term.c (costs_set): Declare static, non-initialized for pcc.
17085 (encode_terminal_code): Remove unused var.
17086
17087 * keyboard.c (kbd_buffer_store_event): Fix interrupt_signal decl
17088 for K&R.
17089
17090 * xterm.c (xlwmenu_window_p): Fix prototype for K&R.
17091
17092 * coding.c (setup_iso_safe_charsets): Fix arg decl for K&R.
17093 (suffixes): Move out of make_subsidiaries for K&R.
17094
17095 * charset.c (map_charset_chars): Fix c_function declaration for K&R.
17096
17097 * lisp.h (DEFUN) [!PROTOTYPES]: Remove spurious `args'.
17098
170992008-02-01 Dave Love <fx@gnu.org>
17100
17101 * data.c (Fchar_or_string_p): Doc fix. Use CHARACTERP.
17102
17103 * category.c (Fmodify_category_entry): Doc fix. Remove unused vars.
17104
171052008-02-01 Yong Lu <lyongu@asia-infonet.com>
17106
17107 * charset.c (Fdefine_charset_internal): Fix argument to bzero.
17108
17109 * coding.c (decode_coding_charset): Workaround for the bug of GCC 2.96.
17110
171112008-02-01 Kenichi Handa <handa@m17n.org>
17112
17113 * Makefile.in (lisp, shortlisp): Change cyrillic.elc to cyrillic.el,
17114 vietnamese.elc to vietnamese.el. They are not bytecompiled now.
17115
171162008-02-01 Kenichi Handa <handa@m17n.org>
17117
17118 * coding.c (decode_coding_charset): Adjust for the change of
17119 Fdefine_coding_system_internal.
17120 (Fdefine_coding_system_internal): For a coding system of
17121 `charset' type, store a list of charset IDs in
17122 `charset_attr_charset_valids' element of coding attributes.
17123
171242008-02-01 Kenichi Handa <handa@m17n.org>
17125
17126 * coding.c (ONE_MORE_BYTE_NO_CHECK): Increment consumed_chars.
17127 (emacs_mule_char): New arg src. Delete arg `composition'. Change
17128 caller. Handle 2-byte and 3-byte charsets correctly.
17129 (DECODE_EMACS_MULE_COMPOSITION_RULE_20): Rename from
17130 DECODE_EMACS_MULE_COMPOSITION_RULE. Change caller.
17131 (DECODE_EMACS_MULE_COMPOSITION_RULE_21): New macro.
17132 (DECODE_EMACS_MULE_21_COMPOSITION): Call
17133 DECODE_EMACS_MULE_COMPOSITION_RULE_21. Produce correct annotation
17134 sequence.
17135 (decode_coding_emacs_mule): Handle composition correctly. Rewind
17136 `src' and `consumed_chars' correctly before calling emacs_mule_char.
17137 (DECODE_COMPOSITION_START): Correctly handle the case of altchar
17138 and alt&rule composition.
17139 (decode_coding_iso_2022): Handle composition correctly.
17140 (init_coding_once): Setup emacs_mule_bytes for private charsets.
17141
17142 * charset.c (Fdefine_charset_internal): Fix bug for the case of
17143 re-defining a charset. If the charset has :emacs-mule-id, setup
17144 emacs_mule_bytes.
17145 (Fmake_char): If CODE1 is nil, use the minimum code of the charset.
17146
171472008-02-01 Kenichi Handa <handa@m17n.org>
17148
17149 * coding.c (encode_coding_iso_2022, encode_coding_sjis)
17150 (encode_coding_big5, encode_coding_charset): If coding requires safe
17151 encoding, produce a character specified by
17152 CODING_INHIBIT_CHARACTER_SUBSTITUTION.
17153
171542008-02-01 Dave Love <fx@gnu.org>
17155
17156 * xterm.c (XSetIMValues): Declare.
17157
17158 * process.c: Conditionally include sys/wait.h, pty.h.
17159
17160 * print.c (print_object): Fix print format for 64-bit systems.
17161
17162 * keyboard.c (modify_event_symbol): Fix print format for 64-bit systems.
17163
17164 * buffer.c (emacs_strerror): Declare.
17165
17166 * fontset.c (Fclear_face_cache): Declare.
17167 (accumulate_font_info): Comment-out (unused).
17168 (face_for_char, Fset_fontset_font, Ffontset_info): Remove unused
17169 variables.
17170
17171 * character.h (string_escape_byte8): Declare.
17172
17173 * charset.c (load_charset_map, load_charset_map_from_file): Remove
17174 unused vars.
17175 (Fdefine_charset_internal, Fsplit_char, syms_of_charset)
17176 (Fmap_charset_chars): Doc fix.
17177
17178 * coding.c (Vchar_coding_system_table, Qchar_coding_system): Remove.
17179 (Fset_coding_system_priority, Fset_coding_system_priority)
17180 (Fdefine_coding_system_internal): Doc fix.
17181
171822008-02-01 Dave Love <fx@gnu.org>
17183
17184 * s/osf5-0.h (C_SWITCH_SYSTEM) [!__GNUC__]: Remove -nointrinsics.
17185
171862008-02-01 Kenichi Handa <handa@m17n.org>
17187
17188 * character.c (string_escape_byte8): Make multibyte string with
17189 correct size.
17190
17191 * charset.c (Fmake_char): Delete unnecessary code.
17192
171932008-02-01 Kenichi Handa <handa@m17n.org>
17194
17195 * xfns.c (x_encode_text): Allocate coding.destination here, and
17196 call encode_coding_object with dst_object Qnil.
17197
17198 * buffer.c (Fset_buffer_multibyte): Convert 8-bit bytes to
17199 multibyte form correctly.
17200
17201 * fontset.c (fs_load_font): Check fontp->full_name (not fontname)
17202 against Vfont_encoding_alist.
17203
17204 * coding.c (Fdecode_sjis_char): Fix typo (0x7F->0xFF). Fix the
17205 handling of charset list.
17206 (encode_coding_iso_2022): Setup coding->safe_charsets in advance.
17207 (decode_coding_object): Move point to coding->dst_pos before
17208 calling post-read-conversion function.
17209 (encode_coding_object): Give correct arguments to
17210 pre-write-conversion. Ignore the return value of
17211 pre-write-conversion function. Pay attention to the case that
17212 pre-write-conversion changes the current buffer. If dst_object is
17213 Qt, even if coding->src_bytes is zero, allocate at least one byte
17214 to coding->destination.
17215
17216 * coding.h (JIS_TO_SJIS): Fix typo (j1->s1, j2->s2).
17217
17218 * charset.c (Fmake_char): Make it more backward compatible.
17219 (Fmap_charset_chars): Fix docstring.
17220
172212008-02-01 Dave Love <fx@gnu.org>
17222
17223 * coding.c: Doc fixes.
17224 (Fdefine_coding_system_alias): Use names, not symbols, in
17225 coding-system-alist.
17226
172272008-02-01 Kenichi Handa <handa@m17n.org>
17228
17229 * fontset.c (free_realized_fontsets): Call Fclear_face_cache instead
17230 of calling free_realized_face.
17231
172322008-02-01 Yong Lu <lyongu@asia-infonet.com>
17233
17234 * charset.c (read_hex): Don't treat SPC as a comment starter.
17235 (decode_char): If CODE_POINT_TO_INDEX returns -1, always return -1.
17236 (Fdecode_char): Fix typo.
17237
172382008-02-01 Kenichi Handa <handa@m17n.org>
17239
17240 * charset.h (struct charset): New member `code_space_mask'.
17241
17242 * coding.c (coding_set_source): Delete the local variable beg_byte.
17243 (encode_coding_charset, Fdefine_coding_system_internal):
17244 Delete the local variable charset.
17245 (Fdefine_coding_system_internal): Setup
17246 attrs[coding_attr_charset_valids] correctly.
17247
17248 * charset.c (CODE_POINT_TO_INDEX): Utilize `code_space_mask'
17249 member to check if CODE is valid or not.
17250 (Fdefine_charset_internal): Initialize `code_space_mask' member.
17251 (encode_char): Before calling CODE_POINT_TO_INDEX, check if CODE
17252 is within the range of charset->min_code and carset->max_code.
17253
172542008-02-01 Dave Love <fx@gnu.org>
17255
17256 * syntax.h (syntax_temp) [!__GNUC__]: Declare.
17257
17258 * dispextern.h (generate_ascii_font): Fix return type.
17259
17260 * xfaces.c (generate_ascii_font): Fix arg declaration.
17261
17262 * coding.c (coding_inherit_eol_type)
17263 (Fset_terminal_coding_system_internal)
17264 (Fset_safe_terminal_coding_system_internal): Fix arg declarations.
17265
172662008-02-01 Kenichi Handa <handa@m17n.org>
17267
17268 * coding.c (decode_coding_charset, encode_coding_charset): Handle
17269 multiple charsets correctly.
17270
172712008-02-01 Kenichi Handa <handa@m17n.org>
17272
17273 * search.c (boyer_moore): Fix handling of multibyte character
17274 translation.
17275
17276 * xdisp.c (display_mode_element): When the variable `elt' is
17277 changed, update `this' and `lisp_string'.
17278
172792008-02-01 Kenichi Handa <handa@m17n.org>
17280
17281 * buffer.c (Fset_buffer_multibyte): Fix 8-bit char handling.
17282
17283 * callproc.c (Fcall_process): Be sure to give the current buffer
17284 to decode_coding_c_string. Update PT and PT_BYTE after the insertion.
17285
17286 * charset.c (struct charset_map_entries): New struct.
17287 (load_charset_map): Rename from parse_charset_map. New args
17288 entries and n_entries. Change caller.
17289 (load_charset_map_from_file): Rename from load_charset_map.
17290 Change caller. New arg control_flag. Call load_charset_map at
17291 the tail.
17292 (load_charset_map_from_vector): New function.
17293 (Fdefine_charset_internal): Setup charset.compact_codes_p.
17294 (encode_char): If the charset is compact, change a character index
17295 to a code point.
17296
17297 * coding.c (coding_alloc_by_making_gap): Check the case that the
17298 source and destination are the same correctly.
17299 (decode_coding_raw_text): Set coding->consumed_char and
17300 coding->consumed to 0.
17301 (produce_chars): If coding->chars_at_source is nonzero, update
17302 coding->consumed_char and coding->consumed before calling
17303 alloc_destination.
17304 (Fdefine_coding_system_alias): Register ALIAS in
17305 Vcoding_system_alist.
17306 (syms_of_coding): Define `no-conversion' coding system at the tail.
17307
17308 * fileio.c (Finsert_file_contents): Set coding_system instead of
17309 val. If the current buffer is multibyte, always call
17310 decode_coding_gap.
17311
17312 * xfaces.c (try_font_list): Give higher priority to fontset's
17313 family than face's family.
17314
173152008-02-01 Kenichi Handa <handa@m17n.org>
17316
17317 * callproc.c (Fcall_process): Be sure to give the current buffer
17318 to decode_coding_c_string.
17319
17320 * xfaces.c (try_font_list): Give a family specified in a fontset
17321 higher priority than a family specified in a face.
17322
173232008-02-01 Kenichi Handa <handa@m17n.org>
17324
17325 * fileio.c (Finsert_file_contents): Fix calculation of `inserted'.
17326 Fix arguments to insert_from_buffer.
17327
17328 * xdisp.c (display_mode_element): Fix calculation of `bytepos'.
17329
173302008-02-01 Kenichi Handa <handa@m17n.org>
17331
17332 * coding.c (produce_chars): Set the variable `multibytep' correctly.
17333 (decode_coding_gap): Set coding->dst_multibyte correctly.
17334
173352008-02-01 Kenichi Handa <handa@m17n.org>
17336
17337 * coding.c (encode_coding_utf_8): Initialize produced_chars to 0.
17338 (decode_coding_utf_16): Fix converting high and low bytes to code-point.
17339 (encode_coding_utf_16): Substitute coding->default_char for
17340 non-Unicode characters.
17341 (decode_coding): Don't call record_insert here.
17342 (setup_coding_system): Initialize `surrogate' of
17343 coding->spec.utf_16 to 0.
17344 (EMIT_ONE_BYTE): Fix for multibyte case.
17345
17346 * insdel.c (insert_from_gap): Call record_insert.
17347
173482008-02-01 Kenichi Handa <handa@m17n.org>
17349
17350 * casefiddle.c (casify_region): Fix multibyte case.
17351
17352 * character.c (c_string_width): Add return type `int'.
17353 (char_string_with_unification): Delete arg ADVANCED.
17354
17355 * character.h (CHAR_VALID_P): Don't call CHARACTERP.
17356 (CHAR_STRING): Adjust for the change of char_string_with_unification.
17357 (CHAR_STRING_ADVANCE): Make it do-while statement.
17358
17359 * chartab.c (sub_char_table_set_range): Optimize for the case
17360 DEPTH == 3. Add workaround code for a GCC optimization bug.
17361
17362 * charset.c (parse_charset_map): Remove an unused variable.
17363
17364 * coding.c: Delete unused variables.
17365
17366 * fileio.c (Finsert_file_contents): Set coding_system to Qnil
17367 earlier. If inserted is zero and the coding system doesn't
17368 require flushing, don't call decode_coding_gap.
17369
17370 * syntax.h (SET_RAW_SYNTAX_ENTRY): Don't call make_number.
17371
173722008-02-01 Kenichi Handa <handa@m17n.org>
17373
17374 The following changes are for using Unicode as an internal
17375 character model, and use UTF-8 format for buffer/string
17376 representation.
17377
17378 * .gdbinit (xchartable): Adjust for the change of char table structure.
17379 (xsubchartable, xcoding, xcharset, xcurbuf): New commands.
17380
17381 * Makefile.in (obj): Add character.o and chartab.o.
17382 (lisp, shortlisp): Remove utf-8.elc.
17383 (*.o): For many files, change dependency on charset.h to
17384 character.h, and add dependency on character.h.
17385 (character.o, chartab.o): New targets.
17386
17387 * abbrev.c, bytecode.c, casefiddle.c, cmds.c, dispnew.c, doc.c:
17388 * doprnt.c, dosfns.c, frame.c, marker.c, minibuf.c, msdos.c:
17389 * w16select.c, w32bdf.c, w32console.c: Include "character.h" instead
17390 of "charset.h".
17391
17392 * dired.c, filelock.c: Include "character.h".
17393
17394 * alloc.c: Include "character.h" instead of "charset.h".
17395 (Fmake_char_table, make_sub_char_table): Move to chartab.c.
17396 (syms_of_alloc): Remove defsubr for Smake_char_table.
17397
17398 * buffer.c: Include "character.h" instead of "charset.h", don't
17399 include "coding.h".
17400 (Fset_buffer_multibyte): Adjust for UTF-8.
17401
17402 * buffer.h: EXFUN Fbuffer_live_p.
17403
17404 * callproc.c: Include "character.h" instead of "charset.h".
17405 (Fcall_process): Big change for the new code-conversion APIs.
17406
17407 * casetab.c: Include "character.h" instead of "charset.h".
17408 (set_canon, set_identity, shuffle): Adjust for the new
17409 map_char_table spec.
17410 (init_casetab_once): Call CHAR_TABLE_SET instead of directly
17411 accessing the char table structure.
17412
17413 * chartab.c: New file that implements char table.
17414
17415 * category.c: Include "character.h".
17416 (copy_category_entry): New function.
17417 (copy_category_table): Call map_char_table and copy_category_entry.
17418 (Fmake_category_table): Initialize all top-level slots.
17419 (char_category_set): New function.
17420 (modify_lower_category_set): Delete.
17421 (Fmodify_category_entry): Call char_table_ref_and_range.
17422
17423 * category.h (CATEGORY_SET): Just call char_category_set.
17424
17425 * ccl.c: Include "character.h".
17426 (Qccl, Qcclp): New variables.
17427 (CCL_WRITE_CHAR): Alway treat the arg CH as a character even if
17428 it's less than 256.
17429 (CCL_WRITE_MULTIBYTE_CHAR): Delete.
17430 (CCL_WRITE_STRING, CCL_READ_CHAR): Adjust for the change of SRC
17431 and DST type.
17432 (ccl_driver): Change types of argument, adjust code accordingly.
17433 (Fccl_execute, Fccl_execute_on_string): Adjust for the change of
17434 ccl_driver.
17435 (syms_of_ccl): Intern and staticpro Qccl and Qcclp.
17436
17437 * ccl.h (struct ccl_program): Delete members eol_type and multibyte.
17438 New members src_multibyte, dst_multibyte, consumed, and produced.
17439 (struct ccl_spec): Delete members decoder and encoder. New member ccl.
17440 (CODING_SPEC_CCL_PROGRAM): New macro.
17441 (ccl_driver): Update prototype.
17442 (Qccl, Qcclp, Fccl_program_p): Extern them.
17443 (CHECK_CCL_PROGRAM): New macro.
17444
17445 * character.c, character.h, chartab.c: New files.
17446
17447 * charset.c: Mostly re-written. Move character and multibyte sequence
17448 handling codes to character.c.
17449
17450 * charset.h: Mostly re-written. Move character and multibyte sequence
17451 handling codes to character.h.
17452
17453 * coding.c, coding.h: Mostly re-written.
17454
17455 * composite.c: Include "character.h" instead of "charset.h".
17456 (CHAR_WIDTH): Move to character.h.
17457 (HASH_KEY, HASH_VALUE): Delete.
17458
17459 * composite.h (enum composition_method): Change order of enumeration
17460 symbols.
17461
17462 * data.c: Include "character.h" instead of "charset.h".
17463 (Faref): Call CHAR_TABLE_REF for a char table.
17464 (Faset): Call CHAR_TABLE_SET for a char table.
17465
17466 * dispextern.h (free_realized_face, check_face_attribytes)
17467 (generate_ascii_font): Extern them.
17468 (free_realized_multibyte_face): Delete extern.
17469
17470 * disptab.h (DISP_CHAR_VECTOR): Adjust for the change of char
17471 table structure.
17472
17473 * editfns.c: Include "character.h" instead of "charset.h".
17474 (Fchar_to_string): Always call CHAR_STRING.
17475
17476 * emacs.c (main): Call init_charset_once, init_charset,
17477 syms_of_chartab, and syms_of_character.
17478
17479 * fileio.c: Include "character.h" instead of "charset.h".
17480 (Finsert_file_contents): Big change for the new code-conversion API.
17481 (choose_write_coding_system, Fwrite_region): Likewise.
17482 (build_annotations_2): Delete.
17483 (e_write): Big change for the new code-conversion API.
17484
17485 * fns.c: Include "character.h" instead of "charset.h".
17486 (copy_sub_char_table): Move to chartab.c.
17487 (Fcopy_sequence): Call copy_char_table for a char table.
17488 (concat): Delete codes calling count_multibyte.
17489 (string_char_to_byte, string_byte_to_char): Adjust for the new
17490 multibyte form.
17491 (internal_equal): Adjust for the change of char table structure.
17492 (Fchar_table_subtype, Fchar_table_parent, Fset_char_table_parent)
17493 (Fchar_table_extra_slot, Fset_char_table_extra_slot)
17494 (Fchar_table_range, Fset_char_table_range, Fset_char_table_default)
17495 (char_table_translate, optimize_sub_char_table)
17496 (Foptimize_char_table, map_char_table, Fmap_char_table): Move to
17497 chartab.c.
17498 (char_table_ref_and_index): Delete.
17499 (HASH_KEY, HASH_VALUE): Move to lisp.h.
17500 (Fmd5): Call preferred_coding_system instead of accessing
17501 Vcoding_category_list. Adjust for the new code-conversion API.
17502 (syms_of_fns): Move defsubr for char table related functions to
17503 chartab.c.
17504
17505 * fontset.c: Mostly re-written.
17506
17507 * fontset.h (struct font_info): Change type of the member encoding_type.
17508 (enum FONT_SPEC_INDEX): New enum.
17509 (fontset_font_pattern, fs_load_font): Update prototype.
17510 (FS_LOAD_FONT): Adjust for the change of fs_load_font.
17511
17512 * indent.c: Include "character.h" instead of "charset.h".
17513 (MULTIBYTE_BYTES_WIDTH): Call CHAR_WIDTH instead of WIDTH_BY_CHAR_HEAD.
17514
17515 * insdel.c: Include "character.h" instead of "charset.h".
17516 (copy_text): Don't refer to Vnonascii_translation_table.
17517 (insert_from_gap): New function.
17518
17519 * keyboard.c: Include "character.h" instead of "charset.h".
17520 (command_loop_1): Never call direct_output_forward_char before
17521 a non-ASCII character.
17522 (read_char): If Vkeyboard_translate_table is a char table, always
17523 translate a character.
17524
17525 * keymap.c: Include "character.h".
17526 (store_in_keymap): Handle the case that IDX is a cons.
17527 (Fdefine_key): Handle the case that KEY is a cons and the car part
17528 is also a cons (range).
17529 (push_key_description): Adjust for the new character code.
17530 (describe_vector): Call describe_char_table for a char table.
17531 (describe_char_table): New function.
17532
17533 * keymap.h (describe_char_table): Extern it.
17534
17535 * lisp.h (enum pvec_type): New member PVEC_SUB_CHAR_TABLE.
17536 (XSUB_CHAR_TABLE, XSETSUB_CHAR_TABLE): New macros.
17537 (CHAR_TABLE_ORDINARY_SLOTS, CHAR_TABLE_SINGLE_BYTE_SLOTS)
17538 (SUB_CHAR_TABLE_ORDINARY_SLOTS, SUB_CHAR_TABLE_STANDARD_SLOTS):
17539 Delete.
17540 (CHAR_TABLE_REF, CHAR_TABLE_SET): Adjust for the new char table
17541 structure.
17542 (CHAR_TABLE_TRANSLATE): Just call char_table_translate.
17543 (CHARTAB_SIZE_BITS_0, CHARTAB_SIZE_BITS_1, CHARTAB_SIZE_BITS_2)
17544 (CHARTAB_SIZE_BITS_3): New macros.
17545 (chartab_size): Extern it.
17546 (struct Lisp_Char_Table): Re-design.
17547 (struct Lisp_Sub_Char_Table): New structure.
17548 (HASH_KEY, HASH_VALUE): Move from fns.c.
17549 (CHARACTERBITS): Define as 22.
17550 (GLYPH_MASK_FACE, GLYPH_MASK_CHAR): Adjust for the above change.
17551 (SUB_CHAR_TABLE_P): Check PVEC_CHAR_TABLE.
17552 (GC_SUB_CHAR_TABLE_P): New macro.
17553 (Fencode_coding_string, Fdecode_coding_string): Update EXFUN.
17554 (code_convert_string_norecord): Deleted extern.
17555 (init_character_once, syms_of_character, init_charset)
17556 (syms_of_composite, Qeq, Fmakehash, insert_from_gap): Extern them.
17557
17558 * lread.c: Include "character.h".
17559 (read_multibyte): New arg NBYTES.
17560 (read_escape): Change the meaning of returned *BYTEREP.
17561 (to_multibyte): Delete.
17562 (read1): Adjust the handling of char table and string.
17563
17564 * print.c: Include "character.h" instead of "charset.h".
17565 (print_string): Convert 8-bit raw bytes to octal form by
17566 string_escape_byte8.
17567 (print_object): Adjust for the new multibyte form. Print 8-bit
17568 raw bytes always in octal form. Handle sub char table correctly.
17569
17570 * process.c: Include "character.h" instead of "charset.h".
17571 (read_process_output, send_process): Adjust for the new
17572 code-conversion API.
17573
17574 * puresize.h (BASE_PURESIZE): Increase.
17575
17576 * regex.c: Include "character.h" instead of "charset.h".
17577 (BYTE8_TO_CHAR, CHAR_BYTE8_P) [not emacs]: New dummy macros.
17578 (regex_compile): Accept a range whose starting and ending
17579 character have different leading bytes.
17580 (analyse_first): Adjust for the above change.
17581
17582 * search.c: Include "character.h" instead of "charset.h".
17583 (search_buffer, boyer_moore): Adjust for the new multibyte form.
17584 (Freplace_match): Adjust for the change of multibyte_char_to_unibyte.
17585
17586 * syntax.c: Include "character.h" instead of "charset.h".
17587 (syntax_parent_lookup): Delete.
17588 (Fmodify_syntax_entry): Accept a cons as CHAR.
17589 (skip_chars): Adjust for the new multibyte form.
17590 (init_syntax_once): Call char_table_set_range instead of directly
17591 accessing the structure of a char table.
17592
17593 * syntax.h (SET_RAW_SYNTAX_ENTRY): Call CHAR_TABLE_SET.
17594 (SYNTAX_ENTRY_FOLLOW_PARENT): Delete macro.
17595 (SET_RAW_SYNTAX_ENTRY_RANGE): New macro.
17596 (SYNTAX_ENTRY_INT): Call CHAR_TABLE_REF.
17597
17598 * term.c: Include "buffer.h" and "character.h".
17599 (encode_terminal_code, write_glyphs): Adjust for the new
17600 code-conversion API.
17601 (produce_glyphs): Call CHAR_WIDTH instead of CHARSET_WIDTH.
17602
17603 * w32term.c (x_new_font): Adjust for the change of FS_LOAD_FONT.
17604
17605 * xdisp.c: Include "character.h".
17606 (get_next_display_element): Adjust for the new multibyte form.
17607 (disp_char_vector): Adjust for the new char table structure.
17608 (decode_mode_spec_coding): Adjust for the new structure of
17609 coding system.
17610 (decode_mode_spec): Adjust for the new code-conversion API.
17611
17612 * xfaces.c: Include "character.h" instead of "charset.h".
17613 (load_face_font): Adjust for the change of choose_face_font and
17614 FS_LOAD_FONT.
17615 (generate_ascii_font): New function.
17616 (set_lface_from_font_name): Adjust for the change of FS_LOAD_FONT.
17617 (set_font_frame_param): Adjust for the change of choose_face_font.
17618 (free_realized_face): Make it public.
17619 (free_realized_faces_for_fontset): Rename from
17620 free_realized_multibyte_face. Free also faces realized for ASCII.
17621 (choose_face_font): Change arguments. Adjust for the change of
17622 fontset_font_pattern and FS_LOAD_FONT.
17623
17624 * xfns.c: Include "character.h".
17625 (x_encode_text): Adjust for the new code-conversion API.
17626
17627 * xselect.c: Don't include "charset.h".
17628 (selection_data_to_lisp_data): Adjust for the new code conversion API.
17629
17630 * xterm.c: Include "character.h".
17631 (x_encode_char): New argument CHARSET. Change caller.
17632 (x_get_char_face_and_encoding, x_get_glyph_face_and_encoding):
17633 Call ENCODE_CHAR instead of SPLIT_CHAR.
17634 (x_produce_glyphs): Don't check Vnonascii_translation_table Call
17635 CHAR_WIDTH instead of CHARSET_WIDTH.
17636 (XTread_socket): Adjust for the new code-conversion API.
17637 (x_new_font): Adjust for the change of FS_LOAD_FONT.
17638 (x_load_font): Adjust for the change of struct font.
17639
176402008-02-01 Stefan Monnier <monnier@iro.umontreal.ca>
17641
17642 * xfaces.c (face_at_buffer_position): Remove unused vars.
17643
176442008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
17645
17646 * ccl.c (CCL_WRITE_CHAR, CCL_WRITE_MULTIBYTE_CHAR):
17647 Fix overflow checking.
17648
176492008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
17650
17651 * ccl.c (CCL_WRITE_CHAR, CCL_WRITE_MULTIBYTE_CHAR, ccl_driver):
17652 Cancel previous change.
17653
176542008-01-31 Kenichi Handa <handa@ni.aist.go.jp>
17655
17656 * ccl.c (CCL_WRITE_CHAR): Increment extra_bytes only when
17657 ccl->eight_bit_control. Fix check for buffer overflow.
17658 (CCL_WRITE_MULTIBYTE_CHAR): Fix check for buffer overflow.
17659 (ccl_driver): Initialize extra_bytes to 0.
17660
176612008-01-31 Kenichi Handa <handa@ni.aist.go.jp>
17662
17663 * keyboard.c (make_ctrl_char): If C is a multibyte character, just
17664 return it ORed with ctrl_modifier.
17665
176662008-01-29 Miles Bader <miles@gnu.org>
17667
17668 * macterm.c (XTset_vertical_scroll_bar): Fix merge mistake.
17669
176702008-01-28 Jason Rumney <jasonr@gnu.org>
17671
17672 * w32.c (stat): Don't double check for networked drive.
17673
176742008-01-28 Stefan Monnier <monnier@iro.umontreal.ca>
17675
17676 * window.c (run_window_configuration_change_hook): New function.
17677 Code extracted from set_window_buffer. Set the selected frame.
17678 (set_window_buffer): Use it.
17679 * window.h (run_window_configuration_change_hook): Declare.
17680 * dispnew.c (change_frame_size_1): Use it instead of set-window-buffer.
17681
17682 * keyboard.c (read_char): Yet another int/Lisp_Object mixup (YAILOM).
17683
176842008-01-27 Dan Nicolaescu <dann@ics.uci.edu>
17685
17686 * Makefile.in: Remove references to unused macros.
17687
176882008-01-26 Eli Zaretskii <eliz@gnu.org>
17689
17690 * w32.c (g_b_init_get_sid_sub_authority)
17691 (g_b_init_get_sid_sub_authority_count): New static variables.
17692 (GetSidSubAuthority_Proc, GetSidSubAuthorityCount_Proc): New typedefs.
17693 (get_sid_sub_authority, get_sid_sub_authority_count): New functions.
17694 (init_user_info): Use them to retrieve uid and gid.
17695 Use 500/513, the Windows defaults, as Administrator's uid/gid.
17696 (fstat): Use pw_uid and pw_gid from the_passwd structure for
17697 st_uid and st_gid of the file.
17698
176992008-01-26 Jason Rumney <jasonr@gnu.org>
17700
17701 * w32.c (logon_network_drive): New function.
17702 (stat): Use it.
17703
177042008-01-26 Chong Yidong <cyd@stupidchicken.com>
17705
17706 * xdisp.c (pos_visible_p): Handle the case where charpos falls on
17707 invisible text covered with an ellipsis.
17708
177092008-01-25 Richard Stallman <rms@gnu.org>
17710
17711 * xdisp.c (redisplay_window): Run Qwindow_text_change_functions and
17712 jump back to beginning. Move some other initializations after that.
17713 (Qwindow_text_change_functions, Vwindow_text_change_functions):
17714 New variables.
17715 (syms_of_xdisp): Init them.
17716
17717 * keyboard.c (read_char): Restore echo_message_buffer after redisplay.
17718
17719 * buffer.c (reset_buffer_local_variables):
17720 Implement `permanent-local-hook'.
17721 (Qpermanent_local_hook): New variable.
17722 (syms_of_buffer): Init and staticpro it.
17723
177242008-01-25 Michael Albinus <michael.albinus@gmx.de>
17725
17726 * dbusbind.c (xd_retrieve_arg): Pacify GCC on x86_64 GNU/Linux.
17727
177282008-01-25 Thien-Thi Nguyen <ttn@gnuvola.org>
17729
17730 * fns.c (Fclrhash): Return TABLE.
17731
177322008-01-23 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
17733
17734 * macterm.c (x_scroll_bar_create): Initialize bar->redraw_needed_p.
17735 (XTset_vertical_scroll_bar): Redraw scroll bar if bar->redraw_needed_p
17736 is set even without positional changes.
17737 (x_scroll_bar_clear): Set bar->redraw_needed_p.
17738
17739 * macterm.h (struct scroll_bar): New member `redraw_needed_p'.
17740
177412008-01-23 Jason Rumney <jasonr@gnu.org>
17742
17743 * xterm.c (handle_one_xevent): Revert to counting chars not bytes.
17744
17745 * w32term.c (w32_read_socket) <WM_CHAR>: Decode characters outside
17746 the unicode range available in MULE by locale-coding-system.
17747 Improve dbcs lead byte detection. Set event timestamp and modifiers
17748 earlier.
17749
177502008-01-23 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
17751
17752 * mac.c (mac_emacs_pid) [MAC_OSX]: New variable.
17753 [MAC_OSX] (init_mac_osx_environment): Initialize it.
17754 [MAC_OSX] (mac_try_close_socket) [SELECT_USE_CFSOCKET]: Return 0
17755 when used on child processes.
17756
177572008-01-21 Michael Albinus <michael.albinus@gmx.de>
17758
17759 * dbusbind.c (Fdbus_method_return_internal): Rename from
17760 Fdbus_method_return.
17761 (Fdbus_unregister_object): Move to dbus.el.
17762 (Fdbus_call_method, Fdbus_method_return_internal)
17763 (Fdbus_send_signal): Improve debug messages.
17764
177652008-01-20 Martin Rudalics <rudalics@gmx.at>
17766
17767 * undo.c (undo_inhibit_record_point): New variable.
17768 (syms_of_undo): Initialize it.
17769 (record_point): Don't record point when undo_inhibit_record_point
17770 is set.
17771
177722008-01-19 Stefan Monnier <monnier@iro.umontreal.ca>
17773
17774 * process.c (list_processes_1): Don't use SCHARS on a nil buffer name.
17775
17776 * xdisp.c (Qauto_hscroll_mode): New var.
17777 (syms_of_xdisp): Initialize it.
17778 (hscroll_window_tree): Use it to lookup `auto-hscroll-mode' in each
17779 window's buffer.
17780 (hscroll_windows): Don't check automatic_hscrolling_p here.
17781
17782 * window.c (set_window_buffer): Don't unnecessarily reset hscroll and
17783 vscroll if we're setting window-buffer to the value it already has.
17784
177852008-01-18 Dan Nicolaescu <dann@ics.uci.edu>
17786
17787 * m/intel386.h: Remove references to XENIX.
17788
177892008-01-17 Andreas Schwab <schwab@suse.de>
17790
17791 * m/amdx86-64.h (START_FILES, LIB_STANDARD): Use HAVE_LIB64_DIR
17792 instead of HAVE_X86_64_LIB64_DIR.
17793 * m/ibms390x.h (START_FILES, LIB_STANDARD): Likewise.
17794
177952008-01-17 Glenn Morris <rgm@gnu.org>
17796
17797 * m/ibms390x.h (START_FILES, LIB_STANDARD): Adjust value according
17798 to HAVE_X86_64_LIB64_DIR.
17799
178002008-01-16 Dan Nicolaescu <dann@ics.uci.edu>
17801
17802 * s/irix3-3.h:
17803 * s/irix4-0.h:
17804 * s/386-ix.h:
17805 * s/domain.h:
17806 * s/hpux9-x11r4.h:
17807 * s/hpux9shxr4.h: Remove files for systems no longer supported.
17808
17809 * sysdep.c: Remove code containing references to symbols defined
17810 by unsupported systems.
17811
178122008-01-16 Glenn Morris <rgm@gnu.org>
17813
17814 * coding.c (select-safe-coding-system-function): Doc fix.
17815
178162008-01-15 Glenn Morris <rgm@gnu.org>
17817
17818 * config.in: Revert 2008-01-13 change: this is a generated file.
17819
178202008-01-13 Tom Tromey <tromey@redhat.com>
17821
17822 * lisp.h: Fix typo.
17823
178242008-01-13 Dan Nicolaescu <dann@ics.uci.edu>
17825
17826 * m/sequent-ptx.h:
17827 * m/sequent.h:
17828 * s/ptx.h:
17829 * s/ptx4-2.h:
17830 * s/ptx4.h: Remove files for systems no longer supported.
17831
17832 * callproc.c (Fcall_process): Fix previous change.
17833
178342008-01-13 Dan Nicolaescu <dann@ics.uci.edu>
17835
17836 * unexsunos4.c: Remove file, system not supported anymore.
17837
17838 * m/mips.h:
17839 * m/intel386.h:
17840 * callproc.c:
17841 * config.in:
17842 * ecrt0.c:
17843 * emacs.c:
17844 * fileio.c:
17845 * frame.c:
17846 * getpagesize.h:
17847 * keyboard.c:
17848 * lread.c:
17849 * process.c:
17850 * puresize.h:
17851 * sysdep.c:
17852 * systty.h:
17853 * syswait.h:
17854 * unexec.c:
17855 * xdisp.c:
17856 * alloc.c: Remove code containing references to symbols defined by
17857 unsupported systems.
17858
178592008-01-11 Kenichi Handa <handa@ni.aist.go.jp>
17860
17861 * coding.c (detect_coding_mask): Fix previous change.
17862
178632008-01-09 Kenichi Handa <handa@ni.aist.go.jp>
17864
17865 * coding.c (detect_coding_iso2022): New arg
17866 latin_extra_code_state. Allow Latin extra codes only
17867 when *latin_extra_code_state is nonzero.
17868 (detect_coding_mask): If there is a NULL byte, detect the encoding
17869 as UTF-16 or binary. If Latin extra codes exist, detect the
17870 encoding as ISO-2022 only when there's no other proper encoding is
17871 found.
17872
178732008-01-08 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
17874
17875 * frame.c (Fmake_terminal_frame): Use #ifdef MAC_OS8 instead of
17876 #ifdef MAC_OS.
17877
178782008-01-08 Richard Stallman <rms@gnu.org>
17879
17880 * fileio.c (Ffile_name_directory, Fexpand_file_name): Doc fixes.
17881
178822008-01-06 Nick Roberts <nickrob@snap.net.nz>
17883
17884 * keyboard.c (parse_menu_item): Don't enclose key bindings on
17885 menu bar in parentheses.
17886
178872008-01-06 Dan Nicolaescu <dann@ics.uci.edu>
17888
17889 * m/7300.h:
17890 * m/acorn.h:
17891 * m/alliant-2800.h:
17892 * m/alliant.h:
17893 * m/alliant1.h:
17894 * m/alliant4.h:
17895 * m/altos.h:
17896 * m/amdahl.h:
17897 * m/apollo.h:
17898 * m/att3b.h:
17899 * m/aviion-intel.h:
17900 * m/aviion.h:
17901 * m/celerity.h:
17902 * m/clipper.h:
17903 * m/cnvrgnt.h:
17904 * m/convex.h:
17905 * m/cydra5.h:
17906 * m/delta88k.h:
17907 * m/dpx2.h:
17908 * m/dual.h:
17909 * m/elxsi.h:
17910 * m/f301.h:
17911 * m/gould-np1.h:
17912 * m/gould.h:
17913 * m/i860.h:
17914 * m/ibmps2-aix.h:
17915 * m/ibmrt-aix.h:
17916 * m/ibmrt.h:
17917 * m/irist.h:
17918 * m/is386.h:
17919 * m/isi-ov.h:
17920 * m/mega68.h:
17921 * m/mg1.h:
17922 * m/news-r6.h:
17923 * m/news-risc.h:
17924 * m/news.h:
17925 * m/nh3000.h:
17926 * m/nh4000.h:
17927 * m/ns16000.h:
17928 * m/ns32000.h:
17929 * m/nu.h:
17930 * m/orion.h:
17931 * m/orion105.h:
17932 * m/paragon.h:
17933 * m/pfa50.h:
17934 * m/plexus.h:
17935 * m/pyramid.h:
17936 * m/pyrmips.h:
17937 * m/sh3el.h:
17938 * m/sps7.h:
17939 * m/sr2k.h:
17940 * m/stride.h:
17941 * m/sun1.h:
17942 * m/sun2.h:
17943 * m/sun3-68881.h:
17944 * m/sun3-fpa.h:
17945 * m/sun3-soft.h:
17946 * m/sun3.h:
17947 * m/sun386.h:
17948 * m/symmetry.h:
17949 * m/tad68k.h:
17950 * m/tahoe.h:
17951 * m/targon31.h:
17952 * m/tek4300.h:
17953 * m/tekxd88.h:
17954 * m/tower32.h:
17955 * m/tower32v3.h:
17956 * m/ustation.h:
17957 * m/wicat.h:
17958 * m/xps100.h:
17959 * s/cxux.h:
17960 * s/cxux7.h:
17961 * s/dgux.h:
17962 * s/dgux4.h:
17963 * s/dgux5-4-3.h:
17964 * s/dgux5-4r2.h:
17965 * s/esix.h:
17966 * s/esix5r4.h:
17967 * s/hiuxmpp.h:
17968 * s/hiuxwe2.h:
17969 * s/iris3-5.h:
17970 * s/iris3-6.h:
17971 * s/isc2-2.h:
17972 * s/isc3-0.h:
17973 * s/isc4-0.h:
17974 * s/isc4-1.h:
17975 * s/newsos5.h:
17976 * s/newsos6.h:
17977 * s/osf1.h:
17978 * s/osf5-0.h:
17979 * s/riscix1-1.h:
17980 * s/riscix12.h:
17981 * s/sco4.h:
17982 * s/sco5.h:
17983 * s/sunos4-0.h:
17984 * s/sunos4-1.h:
17985 * s/sunos413.h:
17986 * s/sunos4shr.h:
17987 * s/umax.h:
17988 * s/unipl5-2.h:
17989 * s/xenix.h:
17990 * cxux-crt0.s:
17991 * unexapollo.c:
17992 * unexconvex.c:
17993 * unexenix.c:
17994 * unexsni.c: Remove files for systems no longer supported.
17995
17996 * m/intel386.h: Remove references to unsupported systems.
17997
17998 * w32.c (get_emacs_configuration): Remove reference to i860.
17999
18000 * sysdep.c: Remove dead code.
18001
180022008-01-05 Dan Nicolaescu <dann@ics.uci.edu>
18003
18004 * s/rtu.h:
18005 * m/masscomp.h: Remove files. Platform is obsolete.
18006
180072008-01-04 Michael Albinus <michael.albinus@gmx.de>
18008
18009 * dbusbind.c (Fdbus_method_return): New function.
18010 (xd_read_message): Add the serial number to the event.
18011 (Fdbus_register_method): Activate the function.
18012
180132008-01-03 Stefan Monnier <monnier@iro.umontreal.ca>
18014
18015 * keyboard.c (read_key_sequence): Fix typo.
18016
180172008-01-03 Michael Albinus <michael.albinus@gmx.de>
18018
18019 * dbusbind.c (all): Replace XCAR by CAR_SAFE and XCDR by CDR_SAFE.
18020 (xd_signature, xd_append_arg): Handle element type detection for
18021 empty arrays.
18022 (Fdbus_call_method, Fdbus_send_signal): Undo type casting for
18023 SDATA () calls; this must be solved more general.
18024 (Fdbus_register_signal): Use SBYTES instead of strlen.
18025
180262008-01-03 Magnus Henoch <magnus@zemdatav>
18027
18028 * dbusbind.c (xd_append_arg): Use unsigned char instead of
18029 unsigned int for byte values (necessary for big-endian platform).
18030 (Fdbus_call_method): Handle the case of no returned arguments.
18031
180322007-12-31 Tom Tromey <tromey@redhat.com> (tiny change)
18033
18034 * dbusbind.c (xd_read_message): Use non-static input_event struct.
18035
180362007-12-31 Magnus Henoch <mange@freemail.hu>
18037
18038 * dbusbind.c (xd_signature): Signature of variant is just "v".
18039
180402007-12-30 Michael Albinus <michael.albinus@gmx.de>
18041
18042 * dbusbind.c: Fix several errors and compiler warnings.
18043 Reported by Tom Tromey <tromey@redhat.com>.
18044 (XD_ERROR, XD_DEBUG_MESSAGE)
18045 (XD_DEBUG_VALID_LISP_OBJECT_P): Wrap code with "do ... while (0)".
18046 (xd_append_arg): Part for basic D-Bus types rewritten.
18047 (xd_retrieve_arg): Split implementation of DBUS_TYPE_BYTE and
18048 DBUS_TYPE_(U)INT16. Don't call XD_DEBUG_MESSAGE with "%f" if not
18049 appropriate.
18050 (xd_read_message): Return Qnil. Don't signal an error; it is not
18051 useful during event reading.
18052 (Fdbus_register_signal): Signal an error if the check for
18053 FUNCTIONP fails.
18054 (Fdbus_register_method): New function. The implementation is not
18055 complete, the call of the function signals an error therefore.
18056 (Fdbus_unregister_object): New function, renamed from
18057 Fdbus_unregister_signal. The initial check signals an error, if
18058 the object is not well formed.
18059
180602007-12-30 Richard Stallman <rms@gnu.org>
18061
18062 * textprop.c (get_char_property_and_overlay):
18063 Signal error if POSITION is out of range in a buffer.
18064
180652007-12-29 Martin Rudalics <rudalics@gmx.at>
18066
18067 * w32fns.c (Fx_create_frame): Make copy of frame parameters
18068 because the original parameters are in pure storage now.
18069
180702007-12-24 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
18071
18072 * xdisp.c (phys_cursor_in_rect_p): Check if cursor is in fringe area.
18073
180742007-12-22 Eli Zaretskii <eliz@gnu.org>
18075
18076 * callint.c (syms_of_callint) <command-history>: Add reference to
18077 history-length in the doc string.
18078
180792007-12-17 Jason Rumney <jasonr@gnu.org>
18080
18081 * w32fns.c (w32_wnd_proc) <WM_KEYDOWN>: Cast char to unsigned
18082 before passing as wParam.
18083
180842007-12-22 Michael Albinus <michael.albinus@gmx.de>
18085
18086 * dbusbind.c (xd_retrieve_arg): Handle DBUS_TYPE_BYTE,
18087 DBUS_TYPE_INT16, DBUS_TYPE_UINT16, DBUS_TYPE_INT64,
18088 DBUS_TYPE_UINT64, DBUS_TYPE_DOUBLE and DBUS_TYPE_SIGNATURE.
18089 Return float when DBUS_TYPE_INT32 or DBUS_TYPE_UINT32 do not fit
18090 as number.
18091 (Fdbus_call_method): Fix docstring.
18092
180932007-12-21 Michael Albinus <michael.albinus@gmx.de>
18094
18095 * dbusbind.c (XD_BASIC_DBUS_TYPE, XD_DBUS_TYPE_P, XD_NEXT_VALUE):
18096 New macros.
18097 (XD_SYMBOL_TO_DBUS_TYPE): Rename from XD_LISP_SYMBOL_TO_DBUS_TYPE.
18098 (XD_OBJECT_TO_DBUS_TYPE): Rename from XD_LISP_OBJECT_TO_DBUS_TYPE.
18099 Simplify.
18100 (xd_signature): New function.
18101 (xd_append_arg): Compute also signatures. Major rewrite.
18102 (xd_retrieve_arg): Make debug messages friendly.
18103 (Fdbus_call_method, Fdbus_send_signal): Extend docstring.
18104 Check for signatures of arguments.
18105
181062007-12-19 Michael Albinus <michael.albinus@gmx.de>
18107
18108 * dbusbind.c (QCdbus_type_byte, QCdbus_type_boolean)
18109 (QCdbus_type_int16, QCdbus_type_uint16, QCdbus_type_int32)
18110 (QCdbus_type_uint32, QCdbus_type_int64, QCdbus_type_uint64)
18111 (QCdbus_type_double, QCdbus_type_string, QCdbus_type_object_path)
18112 (QCdbus_type_signature, QCdbus_type_array, QCdbus_type_variant)
18113 (QCdbus_type_struct, QCdbus_type_dict_entry): New D-Bus type symbols.
18114 (XD_LISP_SYMBOL_TO_DBUS_TYPE): New macro.
18115 (XD_LISP_OBJECT_TO_DBUS_TYPE): Add compound types.
18116 (xd_retrieve_value): Remove. Functionality included in ...
18117 (xd_append_arg): New function.
18118 (Fdbus_call_method, Fdbus_send_signal): Apply it.
18119
181202007-12-16 Michael Albinus <michael.albinus@gmx.de>
18121
18122 * dbusbind.c (top): Include <stdio.h>.
18123 (Fdbus_call_method, Fdbus_send_signal): Apply type cast in
18124 dbus_message_new_method_call and dbus_message_new_signal.
18125 (Fdbus_register_signal): Rename unique_name to uname.
18126 Check handler for FUNCTIONP instead of CHECK_SYMBOL. Handle case of
18127 non-existing unique name. Fix typos in matching rule. Return an
18128 object which is useful in Fdbus_unregister_signal.
18129 (Fdbus_unregister_signal): Reimplementation, in order to remove
18130 only the corresponding entry.
18131 (Vdbus_registered_functions_table): Change the order of entries.
18132 Apply these changes in xd_read_message and Fdbus_register_signal.
18133
181342007-12-16 Andreas Schwab <schwab@suse.de>
18135
18136 * fileio.c (Finsert_file_contents): Fix overflow check to not
18137 depend on undefined integer overflow.
18138
181392007-12-14 Jason Rumney <jasonr@gnu.org>
18140
18141 * w32term.c (w32_read_socket): Use MULTIBYTE_CHAR_KEYSTROKE_EVENT
18142 for characters above 127.
18143
181442007-12-13 Jason Rumney <jasonr@gnu.org>
18145
18146 * w32fns.c (w32_wnd_proc, Fw32_reconstruct_hot_key): Range check
18147 before dereferencing array.
18148 (lookup_vk_code): Remove zero comparison.
18149
181502007-12-14 Michael Albinus <michael.albinus@gmx.de>
18151
18152 * dbusbind.c (xd_retrieve_value, xd_retrieve_arg)
18153 (Fdbus_call_method, Fdbus_send_signal, xd_read_message):
18154 Use `unsigned int' instead of `uint'.
18155 (xd_read_message, Fdbus_register_signal): Split expressions into
18156 multiple lines before operators "&&" and "||", according to the
18157 GNU Coding Standards.
18158
181592007-12-14 Eli Zaretskii <eliz@gnu.org>
18160
18161 * dispextern.h (WINDOWS_NT): Fix incorrect spelling of WINDOWSNT.
18162
181632007-12-12 Juri Linkov <juri@jurta.org>
18164
18165 * buffer.c (Frename_buffer): In interactive spec replace
18166 `read-buffer' with `read-string' that uses `buffer-name-history'
18167 as history, and the current buffer's name as default.
18168
181692007-12-10 Stefan Monnier <monnier@iro.umontreal.ca>
18170
18171 * keyboard.c (Fcommand_execute): Call Qcall_interactively instead of
18172 manipulating the backtrace manually.
18173 (make_lispy_event): Merge the ASCII and MULTIBYTE cases.
18174 (struct backtrace, backtrace_list): Remove.
18175 (command_loop_1): Remove dead var `no_direct'.
18176
18177 * buffer.c (reset_buffer_local_variables): If permanent_too is 0, also
18178 preserve non-built-in buffer-local variables.
18179 (Fkill_all_local_variables): Don't re-create&re-set permanent
18180 buffer-local variables.
18181
181822007-12-09 Juri Linkov <juri@jurta.org>
18183
18184 * buffer.c (Frename_buffer): Change interactive spec from "s" to
18185 Lisp code that uses `read-buffer' with current buffer as default.
18186
181872007-12-08 Michael Albinus <michael.albinus@gmx.de>
18188
18189 * dbusbind.c (xd_read_message): Generate an event for every
18190 registered handler. There might be several handlers registered
18191 for the same signal.
18192 (Fdbus_register_signal): Don't overwrite a registration for the
18193 same signal. Add a new registration if handlers are different.
18194 (Vdbus_registered_functions_table): Rework doc string.
18195
181962007-12-07 Michael Albinus <michael.albinus@gmx.de>
18197
18198 * dbusbind.c (Fdbus_get_unique_name, xd_read_message)
18199 (Fdbus_register_signal): Use DBUS_MAXIMUM_NAME_LENGTH and
18200 DBUS_MAXIMUM_MATCH_RULE_LENGTH for string lengths.
18201 (Fdbus_call_method, Fdbus_send_signal, Fdbus_register_signal):
18202 Unify argument lists.
18203 (xd_read_message, Fdbus_register_signal): Reorder and extend event
18204 arguments and hash table keys. Use unique name for service.
18205 (Fdbus_unregister_signal): Remove checks.
18206 (Vdbus_registered_functions_table): Fix doc string.
18207
182082007-12-05 Magnus Henoch <mange@freemail.hu>
18209
18210 * process.c (make_process): Initialize pty_flag to 0.
18211
182122007-12-05 Jason Rumney <jasonr@gnu.org>
18213
18214 * image.c (xbm_load) [WINDOWSNT]: Shuffle the bits of directly
18215 specified XBMs.
18216
182172007-12-05 Richard Stallman <rms@gnu.org>
18218
18219 * xdisp.c (syms_of_xdisp) <scroll-conservatively>: Doc fix.
18220
182212007-12-05 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
18222
18223 * mac.c (cfsockets_for_select) [MAC_OSX && SELECT_USE_CFSOCKET]:
18224 New variable.
18225 (mac_try_close_socket) [MAC_OSX]: New function.
18226 [MAC_OSX] (sys_select) [SELECT_USE_CFSOCKET]:
18227 Update cfsockets_for_select. Replace invalid CFRunLoop source.
18228
18229 * sysdep.c (emacs_close) [MAC_OSX && HAVE_CARBON]:
18230 Use mac_try_close_socket.
18231
182322007-12-05 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
18233
18234 * unexmacosx.c (unrelocate): New argument BASE. Use it instead of
18235 reloc_base.
18236 (copy_dysymtab): Compute relocation base here.
18237 (rebase_reloc_address) [__ppc64__]: New function.
18238 (copy_dysymtab) [__ppc64__]: Use it if relocation base needs to be
18239 changed.
18240
182412007-12-05 Jason Rumney <jasonr@gnu.org>
18242
18243 * w32proc.c (sys_spawnve): Quote args with wildcards.
18244
182452007-12-05 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
18246
18247 * unexmacosx.c (copy_data_segment): Also copy __gcc_except_tab and
18248 __objc_* sections.
18249 (unrelocate) [_LP64]: Set relocation base to address of data segment.
18250
182512007-12-05 Michael Albinus <michael.albinus@gmx.de>
18252
18253 * dbusbind.c (xd_read_message): Return value is a Lisp_Object.
18254 Move check for Vdbus_registered_functions_table to
18255 xd_read_queued_messages.
18256 (xd_read_queued_messages): Protect xd_read_message calls by
18257 internal_condition_case_1.
18258
182592007-12-04 Michael Albinus <michael.albinus@gmx.de>
18260
18261 * dbusbind.c (QCdbus_system_bus, QCdbus_session_bus): Rename from
18262 Qdbus_system_bus and Qdbus_session_bus, respectively.
18263 (Vdbus_intern_symbols): Remove.
18264 (Vdbus_registered_functions_table): New hash table.
18265 (XD_SYMBOL_INTERN_SYMBOL): Remove.
18266 (xd_read_message, Fdbus_register_signal, Fdbus_unregister_signal):
18267 Rewrite in order to manage registered functions by hash table
18268 Vdbus_registered_functions_table.
18269
182702007-12-03 Jan Djärv <jan.h.d@swipnet.se>
18271
18272 * xterm.c: Update URL to Window Manager Specification in comment.
18273
182742007-12-02 Michael Albinus <michael.albinus@gmx.de>
18275
18276 * config.in (HAVE_DBUS): Add.
18277
18278 * Makefile.in (HAVE_DBUS): Add D-Bus definitions if defined.
18279 (ALL_CFLAGS): Add ${DBUS_CFLAGS}.
18280 (obj): Add $(DBUS_OBJ).
18281 (LIBES): Add $(DBUS_LIBS).
18282 (dbusbind.o): New target.
18283
18284 * dbusbind.c: New file.
18285
18286 * emacs.c (main): Call syms_of_dbusbind when HAVE_DBUS is defined.
18287
18288 * keyboard.c: All D-Bus related code is wrapped by "#ifdef HAVE_DBUS".
18289 (Qdbus_event): New Lisp symbol.
18290 (kbd_buffer_get_event, make_lispy_event): Handle DBUS_EVENT.
18291 (gobble_input): Call xd_read_queued_messages, reading D-Bus messages.
b97439ce 18292 (keys_of_keyboard): Define dbus-event.
aac0c6e3
MR
18293
18294 * termhooks.h (event_kind): Add DBUS_EVENT when HAVE_DBUS is defined.
18295
182962007-12-01 Richard Stallman <rms@gnu.org>
18297
18298 * search.c (syms_of_search) <inhibit-changing-match-data>: Doc fix.
18299
183002007-11-30 Jason Rumney <jasonr@gnu.org>
18301
18302 * w32console.c (w32con_ins_del_lines, scroll_line): Clip to window.
18303 (w32con_reset_terminal_modes): Clear screen buffer.
18304 (w32_face_attributes): Don't use color indexes that are out of range.
18305 Only reverse the default colors.
18306
18307 * xfaces.c (map_tty_color, tty_color_name): Remove special case for
18308 WINDOWSNT.
18309
18310 * w32console.c, w32term.h (vga_stdcolor_name): Remove.
18311
183122007-11-29 Jason Rumney <jasonr@gnu.org>
18313
18314 * w32console.c: Leave HAVE_WINDOW_SYSTEM defined.
18315 (w32_face_attributes): Use Vtty_defined_color_alist to determine
18316 if the terminal colors are initialized.
18317 (unspecified_fg, unspecified_bg): Remove unused declarations.
18318
183192007-11-29 Andreas Schwab <schwab@suse.de>
18320
18321 * keyboard.c (apply_modifiers): Fix typo.
18322
183232007-11-29 Richard Stallman <rms@gnu.org>
18324
18325 * keymap.c (Fcurrent_local_map): Doc fix.
18326
183272007-11-28 Petr Salinger <Petr.Salinger@seznam.cz> (tiny change)
18328
18329 * s/gnu-kfreebsd.h: New file.
18330
183312007-11-28 Stefan Monnier <monnier@iro.umontreal.ca>
18332
18333 * buffer.c (Fget_buffer_create, Fmake_indirect_buffer):
18334 Don't cast redundantly.
18335
18336 * keyboard.c (KEY_TO_CHAR): New macro.
18337 (parse_modifiers, apply_modifiers): Accept integer arguments.
18338 (read_key_sequence): Use them to unify the "shift->unshift" mapping
18339 for chars and symbol keys.
18340 After doing such remapping, apply function-key-map again.
18341
183422007-11-27 Dan Nicolaescu <dann@ics.uci.edu>
18343
18344 * Makefile.in (SOME_MACHINE_LISP): Remove VMS files, they are not
18345 compiled anymore.
18346
183472007-11-26 Andreas Schwab <schwab@suse.de>
18348
18349 * process.c (list_processes_1): Fix indentation level of the
18350 command column.
18351
183522007-11-23 Andreas Schwab <schwab@suse.de>
18353
18354 * editfns.c (Fformat): Handle %c specially since it requires the
18355 argument to be of type int.
18356
183572007-11-23 Markus Triska <markus.triska@gmx.at>
18358
18359 * emacs.c (main): Call init_editfns before init_process, since
18360 init_process sets Vprocess_connection_type depending on OS release.
18361
183622007-11-22 Stefan Monnier <monnier@iro.umontreal.ca>
18363
18364 * data.c (do_symval_forwarding): Use same code as in find_symbol_value.
18365 (find_symbol_value): Use do_symval_forwarding.
18366
18367 * data.c (set_internal): Set the value in the `cons-cell' (for
18368 Buffer_Local_values) not only for frame-local variables.
18369
183702007-11-22 Andreas Schwab <schwab@suse.de>
18371
18372 * data.c (Fnumber_to_string): Add cast when passing EMACS_INT
18373 values to sprintf.
18374 * keymap.c (Fsingle_key_description): Likewise.
18375 * print.c (print_object): Likewise.
18376
183772007-11-22 Jan Djärv <jan.h.d@swipnet.se>
18378
18379 * gtkutil.c (update_frame_tool_bar): Don't call x-gtk-map-stock if
18380 file for image is nil.
18381
183822007-11-22 Dan Nicolaescu <dann@ics.uci.edu>
18383
18384 * term.c: Include stdarg.h.
18385 (fatal): Implement using varargs.
18386 * lisp.h (fatal): Add argument types. (Restore 2005-09-30 change).
18387
183882007-11-21 Stefan Monnier <monnier@iro.umontreal.ca>
18389
18390 * lisp.h (struct Lisp_Buffer_Objfwd): Add a `slottype' field.
18391 * data.c (store_symval_forwarding): Get type from buffer_objfwd.
18392 Update call to buffer_slot_type_mismatch.
18393 * buffer.h (buffer_local_types, PER_BUFFER_TYPE): Remove.
18394 (buffer_slot_type_mismatch): Update.
18395 * buffer.c (buffer_local_types): Remove.
18396 (buffer_slot_type_mismatch): Get the symbol and type as arguments.
18397 (defvar_per_buffer): Set the type in the buffer_objfwd.
18398
183992007-11-21 Jason Rumney <jasonr@gnu.org>
18400
18401 * w32bdf.c (w32_init_bdf_font, w32_BDF_to_x_font):
18402 CreateFileMapping returns NULL on failure.
18403
184042007-11-21 Stefan Monnier <monnier@iro.umontreal.ca>
18405
18406 * search.c (Fset_match_data): Remove the `evaporate' feature.
18407 (unwind_set_match_data): Don't use the `evaporate' feature.
18408
184092007-11-21 Jason Rumney <jasonr@gnu.org>
18410
18411 * dispnew.c (init_display) [WINDOWSNT]: Hardcode terminal_type.
18412
18413 * w32console.c (w32con_write_glyphs): Remove unused variables.
18414
184152007-11-20 Dan Nicolaescu <dann@ics.uci.edu>
18416
18417 * macterm.c (mac_term_init): Call add_keyboard_wait_descriptor.
18418
18419 * s/darwin.h (MULTI_KBOARD): Remove.
18420
18421 * macfns.c (x_create_tip_frame, Fx_create_frame)
18422 (x_create_tip_frame): Don't deal with MULTI_KBOARD.
18423
184242007-11-19 Stefan Monnier <monnier@iro.umontreal.ca>
18425
18426 * buffer.c (Fbuffer_local_value): Remove redundant test.
18427 (swap_out_buffer_local_variables): Swap out binding in `buffer' rather
18428 than in `current-buffer' to match the comment.
18429 Do the swap using swap_in_global_binding.
18430
18431 * data.c (store_symval_forwarding, set_internal):
18432 * eval.c (specbind): Remove dead code.
18433
18434 * coding.c (detect_coding, Fupdate_coding_systems_internal):
18435 * fns.c (Fmd5): Use find_symbol_value rather than SYMBOL_VALUE
18436 Since we do not want to see internal Lisp_*fwd objects here.
18437
184382007-11-18 Jan Djärv <jan.h.d@swipnet.se>
18439
18440 * sysdep.c (init_system_name): Use getaddrinfo if available.
18441
18442 * xterm.c (x_scroll_bar_set_handle, x_scroll_bar_handle_click)
18443 (x_scroll_bar_note_movement): start, end, with, height in struct
18444 scroll_bar are integers and not Lisp_Object, so remove XINT for them.
18445
184462007-11-17 Dan Nicolaescu <dann@ics.uci.edu>
18447
18448 * puresize.h (BASE_PURESIZE): Increase to 1190000.
18449
184502007-11-16 Stefan Monnier <monnier@iro.umontreal.ca>
18451
18452 * buffer.h (struct buffer): Move `undo_list' back to before `name'.
18453 This undoes Richard's change of 14-Oct-2002.
18454
18455 * alloc.c (allocate_other_vector):
18456 * lisp.h (allocate_other_vector): Remove.
18457
18458 * window.c (struct save_window_data): Move non-lisp data to the end
18459 and make it `int' rather than Lisp_Object.
18460 (Fcurrent_window_configuration): Use ALLOCATE_PSEUDOVECTOR.
18461 Done wrap/unwrap integer values.
18462 (Fset_window_configuration, compare_window_configurations):
18463 Update use of fields to their new types.
18464
18465 * xterm.h (struct scroll_bar): Only use Lisp_Object for lisp data.
18466 Turn integer fields into `int'. Merge x_window_low and x_window_high.
18467 (SCROLL_BAR_PACK, SCROLL_BAR_UNPACK, SCROLL_BAR_X_WINDOW)
18468 (SET_SCROLL_BAR_X_WINDOW): Remove.
18469 (SCROLL_BAR_X_WIDGET, SET_SCROLL_BAR_X_WIDGET):
18470 Access the new x_window field directly.
18471 * xterm.c (x_scroll_bar_create): Use a pseudovector.
18472 Don't wrap/unwrap integers into Lisp_Objects.
18473 (XTset_vertical_scroll_bar, x_scroll_bar_handle_click)
18474 (x_scroll_bar_report_motion):
18475 Don't wrap/unwrap integers into Lisp_Objects.
18476 (x_term_init): Use SDATA.
18477 (x_window_to_scroll_bar, x_create_toolkit_scroll_bar)
18478 (x_scroll_bar_set_handle, x_scroll_bar_remove)
18479 (XTset_vertical_scroll_bar, x_scroll_bar_expose)
18480 (x_scroll_bar_report_motion, x_scroll_bar_clear):
18481 * xfns.c (x_set_background_color):
18482 * gtkutil.c (xg_create_scroll_bar, xg_set_toolkit_scroll_bar_thumb):
18483 Access the new x_window field directly.
18484
18485 * alloc.c (ALLOCATE_PSEUDOVECTOR): Move to lisp.h.
18486 (allocate_pseudovector): Make non-static.
18487
18488 * lisp.h (enum pvec_type): New tag PVEC_OTHER.
18489 (allocate_pseudovector): Declare.
18490 (ALLOCATE_PSEUDOVECTOR): Move from alloc.c.
18491
184922007-11-15 Andreas Schwab <schwab@suse.de>
18493
18494 * editfns.c (Fformat): Correctly format EMACS_INT values.
18495 Also take precision into account when formatting an integer.
18496
18497 * keyboard.c (Fevent_symbol_parse_modifiers): Fix declaration.
18498
184992007-11-15 Stefan Monnier <monnier@iro.umontreal.ca>
18500
18501 * keyboard.c (Fevent_symbol_parse_modifiers): New function.
18502 (syms_of_keyboard): Defsubr it.
18503
18504 * data.c (swap_in_global_binding): Fix longstanding bug where
18505 store_symval_forwarding was not called with the right second argument,
18506 thus causing objfwd-ing from being dropped.
18507
185082007-11-14 Juanma Barranquero <lekktu@gmail.com>
18509
18510 * macfns.c (Fx_create_frame, Fx_display_pixel_width)
18511 (Fx_display_pixel_height, Fx_display_planes)
18512 (Fx_display_color_cells, Fx_server_max_request_size)
18513 (Fx_server_vendor, Fx_server_version, Fx_display_backing_store)
18514 (Fx_display_visual_class, Fx_display_save_under):
18515 * w32fns.c (Fx_create_frame, Fx_display_pixel_width)
18516 (Fx_display_pixel_height, Fx_display_planes)
18517 (Fx_display_color_cells, Fx_server_max_request_size)
18518 (Fx_server_vendor, Fx_server_version, Fx_display_screens)
18519 (Fx_display_mm_height, Fx_display_mm_width)
18520 (Fx_display_backing_store, Fx_display_visual_class)
18521 (Fw32_select_font, Fx_display_save_under):
18522 * xfns.c (Fx_create_frame, Fx_display_pixel_width)
18523 (Fx_display_pixel_height, Fx_display_planes)
18524 (Fx_display_color_cells, Fx_server_max_request_size)
18525 (Fx_server_vendor, Fx_server_version, Fx_display_backing_store)
18526 (Fx_display_save_under): Fix typos in docstrings.
18527
185282007-11-14 Juanma Barranquero <lekktu@gmail.com>
18529
18530 * w32fns.c (Fw32_registered_hot_keys): Don't return the nil values
18531 corresponding to deleted entries; they are an implementation detail.
18532 (gray_bitmap_width, gray_bitmap_height, gray_bitmap_bits):
18533 Remove variables.
18534 (w32_pass_extra_mouse_buttons_to_system, w32_strict_fontnames)
18535 (w32_pass_multimedia_buttons_to_system, w32_strict_painting)
18536 (Vw32_charset_info_alist, w32_to_x_color, w32_init_class)
18537 (w32_createscrollbar, w32_createwindow, my_post_msg, w32_get_modifiers)
18538 (w32_grabbed_keys, cancel_all_deferred_msgs): Make static.
18539 (Fw32_define_rgb_color, Fw32_load_color_file)
18540 (syms_of_w32fns) <w32-pass-multimedia-buttons-to-system>:
18541 Fix typos in docstrings.
18542 (Fx_server_version): Reflow docstring.
18543 (Fw32_shell_execute): Doc fixes.
18544
185452007-11-13 Juanma Barranquero <lekktu@gmail.com>
18546
18547 * w32fns.c (Fw32_register_hot_key): Don't try to register hot key
18548 if w32_parse_hot_key returned nil.
18549
185502007-11-10 Stefan Monnier <monnier@iro.umontreal.ca>
18551
18552 * xdisp.c (load_overlay_strings): Fix copy&paste typo.
18553
185542007-11-09 Jason Rumney <jasonr@gnu.org>
d6c952f8 18555
aac0c6e3
MR
18556 * s/ms-w32.c (USE_TOOLKIT_SCROLL_BARS): Define.
18557
18558 * w32term.c (w32_scroll_bar_handle_click): Use SCROLL_BAR_CLICK_EVENT.
18559
18560 * keyboard.c (discard_mouse_events, make_lispy_event) [WINDOWSNT]:
18561 Remove W32_SCROLL_BAR_CLICK_EVENT.
18562
18563 * termhooks.h (enum event_kind) [WINDOWSNT]: Likewise.
18564 Add MULTIMEDIA_KEY_EVENT.
18565
18566 * keyboard.c (lispy_function_keys) [WINDOWSNT]: Add more keys.
18567 (lispy_multimedia_keys) [WINDOWSNT]: New array.
18568 (make_lispy_event) [WINDOWSNT]: Use it to translate
18569 MULTIMEDIA_KEY_EVENT.
18570
18571 * w32term.h (WM_APPCOMMAND): Define if not already.
18572 (GET_APPCOMMAND_LPARAM): Likewise.
18573
18574 * w32term.c (w32_read_socket): Generate MULTIMEDIA_KEY_EVENT from
18575 WM_APPCOMMAND.
18576
18577 * w32fns.c (w32_pass_multimedia_buttons_to_system): New user option.
18578 (syms_of_w32fns): Export and initialize it.
18579 (w32_wnd_proc): Pass WM_APPCOMMAND on to w32_read_socket.
18580
185812007-11-09 Chong Yidong <cyd@stupidchicken.com>
18582
18583 * dispextern.h (struct it): Don't define OVERLAY_STRING_CHUNK_SIZE
18584 twice.
18585
18586 * xdisp.c (handle_face_prop): Fix last change.
18587
185882007-11-09 Richard Stallman <rms@gnu.org>
18589
18590 * xdisp.c (handle_face_prop): Test for strings that came from overlays,
18591 not just for after-strings and before-strings.
18592 Call face_for_overlay_string and pass the overlay to it.
18593 (handle_display_prop): Determine whether property came from an overlay.
18594 Pass OVERLAY arg to handle_single_display_spec.
18595 (handle_single_display_spec): New arg OVERLAY sets it->from_overlay.
18596 (load_overlay_strings): Fill in it->string_overlays.
18597 (get_overlay_strings_1, push_it, pop_it): Handle it->from_overlays.
18598
18599 * xfaces.c (face_for_overlay_string): Function renamed from
18600 face_at_buffer_position_no_overlays, and add arg OVERLAY.
18601
18602 * dispextern.h (struct it): New elt string_overlays.
18603 New elt from_overlay, also in stack.
18604 Rearrange a few elements.
18605 (face_for_overlay_string): Decl renamed from
18606 face_at_buffer_position_no_overlays, and add argument.
18607
186082007-11-09 Richard Stallman <rms@gnu.org>
18609
18610 * xdisp.c (handle_face_prop): Use face_at_buffer_position_no_overlays
18611 to get the base face for an overlay string.
18612
18613 * dispextern.h (face_at_buffer_position_no_overlays): Add decl.
18614
18615 * xfaces.c (face_at_buffer_position_no_overlays): New function.
18616
18617 * xdisp.c (handle_stop): Move some code out of loop.
18618
186192007-11-09 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
18620
18621 * macfns.c [USE_ATSUI] (Fmac_atsu_font_face_attributes):
18622 Fix conversion from Lisp object to ATSUFontID.
18623
186242007-11-09 Jason Rumney <jasonr@gnu.org>
18625
18626 * xdisp.c (Fformat_mode_line): Do nothing when noninteractive.
18627
186282007-11-09 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
18629
18630 * unexmacosx.c (unexec_regions_recorder, unexec_regions_merge):
18631 Don't assume regions are aligned to page boundary.
18632 (print_load_command_name): Add LC_UUID if defined.
18633
186342007-11-09 Richard Stallman <rms@gnu.org>
18635
18636 * emacs.c (syms_of_emacs) <installation-directory>: Reflow docstring.
18637
186382007-11-07 Jason Rumney <jasonr@gnu.org>
18639
18640 * s/windows95.h: Remove.
18641
186422007-11-06 Jan Djärv <jan.h.d@swipnet.se>
18643
18644 * gtkutil.c (xg_tool_bar_menu_proxy): Handle GTK_IMAGE_ICON_NAME and
18645 abort with a message on unhandled store_type values.
18646
186472007-11-01 Jan Djärv <jan.h.d@swipnet.se>
18648
18649 * xterm.c, xfns.c, xselect.c, xterm.h, s/msdos.h, s/sco4.h, s/sco5.h:
18650 Remove HAVE_X11R5 and HAVE_X11R4.
18651
186522007-11-01 Dan Nicolaescu <dann@ics.uci.edu>
18653
18654 * Makefile.in: Remove references to sunfns.c and sunfns.o.
18655
186562007-11-01 Johan Bockgård <bojohan@gnu.org>
18657
18658 * macterm.c, w32term.c, xterm.c (x_draw_stretch_glyph_string):
18659 Don't set s->stippled_p here, since it has already been set by
18660 x_set_glyph_string_gc from x_draw_glyph_string.
18661
186622007-11-01 Dan Nicolaescu <dann@ics.uci.edu>
18663
18664 * sunfns.c: Remove file.
18665
18666 * m/sun386.h:
18667 * m/sun2.h:
18668 * m/sparc.h: Remove Sun windows code.
18669
186702007-10-31 Stefan Monnier <monnier@iro.umontreal.ca>
18671
18672 * keyboard.c (syms_of_keyboard): Initialize the initial_kboard.
18673 (init_keyboard): Set current_kboard's window-system to nil.
18674 (tty_read_avail_input): Typo.
18675 * frame.c (make_initial_frame): Don't initialize the initial_kboard.
18676
186772007-10-31 Dan Nicolaescu <dann@ics.uci.edu>
18678
18679 * s/usg5-4.h:
18680 * s/usg5-3.h:
18681 * s/ptx.h:
18682 * m/is386.h:
18683 * m/ibmps2-aix.h:
18684 * Makefile.in: Remove all mentions of X10.
18685
18686 * dispnew.c (syms_of_display): Don't mention version 10.
18687
186882007-10-28 Juanma Barranquero <lekktu@gmail.com>
18689
18690 * makefile.w32-in (OBJ1): Remove abbrev.$(O).
18691 ($(BLD)/abbrev.$(O)): Remove.
18692
186932007-10-28 Stefan Monnier <monnier@iro.umontreal.ca>
18694
18695 Rewrite abbrev.c in Elisp.
18696 * image.c (Qcount): Don't declare as extern.
18697 (syms_of_image): Initialize and staticpro `Qcount'.
18698 * puresize.h (BASE_PURESIZE): Increase for the new abbrev.el functions.
18699 * emacs.c (main): Don't call syms_of_abbrev.
18700 * Makefile.in (obj): Remove abbrev.o.
18701 (abbrev.o): Remove.
18702 * abbrev.c: Remove.
18703
187042007-10-26 Martin Rudalics <rudalics@gmx.at>
18705
18706 * window.c (window_min_size_2): Don't count header-line.
18707
187082007-10-26 Dan Nicolaescu <dann@ics.uci.edu>
18709
18710 * frame.h (struct frame): Move all bit fields after the first bit
18711 field to take advantage of the available space. Group all the
18712 chars together to reduce wasted space due to padding.
18713
187142007-10-26 Juanma Barranquero <lekktu@gmail.com>
18715
18716 * minibuf.c (Fread_minibuffer, Feval_minibuffer): Reflow docstrings.
18717
18718 * alloc.c (spare_memory, stack_copy, stack_copy_size, ignore_warnings)
18719 (Vdead, dont_register_blocks, staticvec, staticidx, interval_block)
18720 (n_interval_blocks, init_strings, check_string_bytes, check_sblock)
18721 (init_float, free_float, n_cons_blocks, init_cons, all_vectors)
18722 (n_vectors, symbol_block, symbol_block_index, symbol_free_list)
18723 (n_symbol_blocks, init_symbol, marker_block, marker_free_list)
18724 (n_marker_blocks, init_marker, valid_pointer_p, make_pure_float)
18725 (last_marked, mark_object_loop_halt): Make static.
18726
18727 * frame.c (syms_of_frame) <delete-frame-functions>:
18728 Fix typo in docstring.
18729
187302007-10-25 Juanma Barranquero <lekktu@gmail.com>
18731
18732 * w32.c (init_environment): Fix tiny memory leak.
18733 (w32_get_resource): Remove unused variable `ok'.
18734
187352007-10-25 Stefan Monnier <monnier@iro.umontreal.ca>
18736
18737 Make `window-system' into a keyboard-local variable (rather than
18738 frame-local as done originally by multi-tty).
18739
18740 * keyboard.h (struct kboard): Add Vwindow_system.
18741 * keyboard.c (init_kboard): Set a default for Vwindow_system.
18742 (mark_kboards): Mark Vwindow_system.
18743
18744 * dispnew.c (syms_of_display) <window-system>: Declare terminal-local.
18745 (init_display): Don't set the obsolete `window-system' frame-param.
18746
18747 * xterm.c (x_term_init):
18748 * w32term.c (w32_create_terminal):
18749 * term.c (init_tty): Set Vwindow_system.
18750 * macterm.c (mac_create_terminal): Set a keyboard (missing piece of the
18751 multi-tty merge maybe?), copied from w32term.c. Set Vwindow_system.
18752
18753 * xfns.c (Fx_create_frame, x_create_tip_frame):
18754 * w32fns.c (Fx_create_frame, x_create_tip_frame):
18755 * macfns.c (Fx_create_frame):
18756 Don't set the obsolete `window-system' frame-param.
18757
18758 * frame.h (Qwindow_system): Remove.
18759 * frame.c (Qwindow_system): Remove. In `syms_of_frame' as well.
18760 (Fmake_terminal_frame): Don't set obsolete `window-system' frame-param.
18761
187622007-10-24 Richard Stallman <rms@gnu.org>
18763
18764 * frame.c (x_figure_window_size): For fullscreen case,
18765 set USPosition | PPosition without clobbering rest of window_prompting.
18766
18767 * keyboard.c (Fcurrent_idle_time): Doc fix.
18768
18769 * print.c (Fwith_output_to_temp_buffer): Doc fix.
18770
187712007-10-23 Stefan Monnier <monnier@iro.umontreal.ca>
18772
18773 * process.c (unwind_request_sigio): Only define if __ultrix__.
18774
18775 * callproc.c (child_setup): Remove spurious *.
18776
18777 * lisp.h (Fget_text_property): Declare.
18778 (have_menus_p): Declare it here rather than in sys-dep header files.
18779 * macterm.h (have_menus_p):
18780 * msdos.h (have_menus_p):
18781 * xterm.h (have_menus_p): Remove.
18782
18783 * data.c (Fmake_variable_buffer_local, Fmake_local_variable)
18784 (Fmake_variable_frame_local): Just check the variable's const-ness
18785 rather than checking nil or t.
18786
187872007-10-22 Jason Rumney <jasonr@gnu.org>
18788
18789 * w32fns.c: Include math.h.
18790 (w32_abort): Declaration moved to nt/config.nt.
18791
18792 * s/ms-w32.h (HAVE_STDLIB_H): Define.
18793 (abort): Redefinition moved to nt/config.nt.
18794
18795 * m/windowsnt.h: Remove.
18796
187972007-10-22 Juanma Barranquero <lekktu@gmail.com>
18798
18799 * emacs.c (Fdump_emacs): Fix typo in message.
18800 (syms_of_emacs) <kill-emacs-hook>: Fix typo in docstring.
18801 <installation-directory>: Reflow docstring.
18802
188032007-10-22 Juri Linkov <juri@jurta.org>
18804
18805 * minibuf.c: Allow minibuffer default to be a list of default values.
18806 With empty input use the first element of this list as returned default.
18807 (string_to_object)
18808 (read_minibuf_noninteractive): If defalt is cons, set val to its car.
18809 (read_minibuf): If defalt is cons, set histstring to its car.
18810 (Fread_string): If default_value is cons, set val to its car.
18811 (Fread_buffer): If def is cons, use its car.
18812 (Fcompleting_read): If defalt is cons, set val to its car.
18813
188142007-10-21 Michael Albinus <michael.albinus@gmx.de>
18815
18816 * fileio.c (Fcopy_file): Call file name handler with preserve_uid_gid.
18817
188182007-10-20 Juanma Barranquero <lekktu@gmail.com>
18819
18820 * doc.c (Fdocumentation): Check for advice in all cases.
18821
188222007-10-19 Chong Yidong <cyd@stupidchicken.com>
18823
18824 * Makefile.in [HAVE_LIBRESOLV]: Add -lresolv to linker flags.
18825
188262007-10-19 Richard Stallman <rms@gnu.org>
18827
18828 * doc.c (Fdocumentation): Check for and handle an advised function.
18829
188302007-10-19 Juanma Barranquero <lekktu@gmail.com>
18831
18832 * process.c (Fset_process_filter): Doc fix.
18833
188342007-10-18 Stefan Monnier <monnier@iro.umontreal.ca>
18835
18836 * keyboard.c (read_key_sequence): Undo a change introduced by multi-tty
18837 which caused key-translation-map to applied repeatedly (thus breaking
18838 double-mode).
18839
188402007-10-17 Stefan Monnier <monnier@iro.umontreal.ca>
18841
18842 * xselect.c (x_own_selection, x_handle_selection_clear)
18843 (x_clear_frame_selections):
18844 * w32menu.c (list_of_panes, list_of_items):
18845 * w32fns.c (w32_color_map_lookup, Fx_create_frame, Fx_display_list):
18846 * textprop.c (validate_plist, interval_has_all_properties)
18847 (interval_has_some_properties, interval_has_some_properties_list)
18848 (add_properties, text_property_list):
18849 * process.c (Fget_buffer_process, list_processes_1, status_notify):
18850 * minibuf.c (Fassoc_string):
18851 * macselect.c (x_own_selection, x_clear_frame_selections)
18852 (Fx_disown_selection_internal):
18853 * keymap.c (Fcommand_remapping, where_is_internal, describe_map_tree):
18854 Use CONSP rather than !NILP and XC[AD]R rather than Fc[ad]r.
18855
188562007-10-17 Chong Yidong <cyd@stupidchicken.com>
18857
18858 * process.c: Link to libs for calling res_init() if available.
18859 (Fmake_network_process): Call res_init() before getaddrinfo or
18860 gethostbyname, if possible.
18861
188622007-10-17 Stefan Monnier <monnier@iro.umontreal.ca>
18863
18864 * lread.c (read1): Set pvectype for char_tables.
18865
18866 * lisp.h (XMISCANY, XMARKER, XINTFWD, XBOOLFWD, XOBJFWD, XOVERLAY)
18867 (XBUFFER_OBJFWD, XBUFFER_LOCAL_VALUE, XKBOARD_OBJFWD, XSAVE_VALUE):
18868 Add type checks.
18869 (SOME_BUFFER_LOCAL_VALUEP, GC_SOME_BUFFER_LOCAL_VALUEP): Remove.
18870
18871 * alloc.c (free_misc): Use XMISCTYPE.
18872 (live_misc_p, gc_sweep): Use Lisp_Misc_Any.
18873
188742007-10-17 Glenn Morris <rgm@gnu.org>
18875
18876 * minibuf.c (Qcompletion_ignore_case): New Lisp_Object.
18877 (syms_of_minibuf): Add Qcompletion_ignore_case.
18878 * dired.c (Qcompletion_ignore_case): Change to external.
18879 (syms_of_dired) [VMS]: Remove Qcompletion_ignore_case.
18880 * fileio.c (Qcompletion_ignore_case): New external Lisp_Object.
18881 (Fread_file_name): Use it rather than intern'ing.
18882
18883 * coding.c (Qcompletion_ignore_case): New external Lisp_Object.
18884 (Fread_coding_system): Ignore case of user input.
18885
188862007-10-16 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
18887
18888 * xdisp.c (handle_display_prop): Ignore display specs after
18889 replacing one when string text is being replaced.
18890 (handle_single_display_spec): Pretend as if characters with display
18891 property haven't been consumed only when buffer text is being replaced.
18892
188932007-10-16 Stefan Monnier <monnier@iro.umontreal.ca>
18894
18895 * xfns.c (Fx_create_frame, Fx_display_list):
18896 * window.c (window_fixed_size_p, enlarge_window)
18897 (shrink_window_lowest_first):
18898 * macterm.c (init_font_name_table):
18899 * macfns.c (Fx_create_frame, Fx_display_list):
18900 * lread.c (close_load_descs):
18901 * keyboard.c (read_char_x_menu_prompt):
18902 * fns.c (Fmember, Fmemql, Fdelete, Fset_char_table_parent):
18903 * coding.c (code_convert_region_unwind): Test the type of an object
18904 rather than just !NILP before extracting data from it.
18905
18906 * alloc.c (Fpurecopy): Set the pvec tag on pseudo vectors.
18907
18908 * lisp.h (enum Lisp_Misc_Type): Del Lisp_Misc_Some_Buffer_Local_Value.
18909 (XMISCANY): New macro.
18910 (XMISCTYPE): Use it.
18911 (struct Lisp_Misc_Any): New type.
18912 (union Lisp_Misc): Use it.
18913 (struct Lisp_Buffer_Local_Value): Add `local_if_set' bit.
18914 * data.c (Fboundp, store_symval_forwarding, swap_in_global_binding)
18915 (find_symbol_value, set_internal, default_value, Fset_default)
18916 (Fmake_variable_buffer_local, Fmake_local_variable)
18917 (Fkill_local_variable, Fmake_variable_frame_local, Flocal_variable_p)
18918 (Flocal_variable_if_set_p, Fvariable_binding_locus):
18919 The SOME_BUFFER_LOCAL_VALUEP distinction is replaced by local_if_set.
18920 * alloc.c (allocate_buffer): Set the size and tag.
18921 (allocate_misc, mark_maybe_object, mark_object, survives_gc_p):
18922 Use XMISCANY.
18923 (die): Follow the GNU convention for error messages.
18924 * print.c (print_object): SOME_BUFFER_LOCAL_VALUEP -> local_if_set.
18925 * buffer.c (Fget_buffer_create, Fmake_indirect_buffer): Don't set the
18926 tag any more.
18927 (set_buffer_internal_1):
18928 * frame.c (store_frame_param):
18929 * eval.c (specbind):
18930 * xdisp.c (select_frame_for_redisplay): Drop SOME_BUFFER_LOCAL_VALUEP.
18931
18932 * doc.c (Fsnarf_documentation): Simplify.
18933
189342007-10-14 Juanma Barranquero <lekktu@gmail.com>
18935
18936 * w32term.c (w32_font_is_double_byte, my_create_scrollbar): Make static.
18937 (syms_of_w32term) <w32-enable-unicode-output>: Fix typo in docstring.
18938
189392007-10-14 Stefan Monnier <monnier@iro.umontreal.ca>
18940
18941 * buffer.c (Fmake_indirect_buffer): Set the buffer's tag.
18942
189432007-10-14 Juanma Barranquero <lekktu@gmail.com>
18944
18945 * eval.c (do_autoload): Don't save autoloads.
18946
18947 * data.c (Ffset): Save autoload of the function being set.
18948
189492007-10-07 John Paul Wallington <jpw@pobox.com>
18950
18951 * xfns.c (x_create_tip_frame): Set the `display-type' frame
18952 parameter before setting up faces.
18953
189542007-10-13 Eli Zaretskii <eliz@gnu.org>
18955
18956 * ccl.c (Fregister_code_conversion_map):
18957 * keyboard.c (append_tool_bar_item): Reformat last change.
18958
18959 * lisp.h (eabs): Rename from `abs'. All callers changed.
18960
189612007-10-05 Dmitry Antipov <dmantipov@yandex.ru>
18962
18963 * buffer.c (add_overlay_mod_hooklist):
18964 * ccl.c (Fregister_ccl_program, Fregister_code_conversion_map):
18965 * fontset.c (make_fontset):
18966 * keyboard.c (GROW_RAW_KEYBUF, menu_bar_items, menu_bar_item)
18967 (append_tool_bar_item):
18968 * macmenu.c (grow_menu_items):
18969 * w32menu.c (grow_menu_items):
18970 * xmenu.c (grow_menu_items): Use larger_vector.
18971
189722007-10-13 Eli Zaretskii <eliz@gnu.org>
18973
18974 * msdos.c (dos_rawgetc): Undo last change (there's no ``leaving
18975 selected frame'' on MSDOS).
18976
189772007-10-12 Martin Rudalics <rudalics@gmx.at>
18978
18979 * frame.c (Qexplicit_name): New variable.
18980 (x_report_frame_params): Report it in parameter alist.
18981 (syms_of_frame): Intern and staticpro it.
18982
189832007-10-10 Patrick Mahan <mahan@mahan.org> (tiny change)
18984
18985 * macfns.c (x_create_tip_frame): Set terminal for frame.
18986
189872007-10-10 Stefan Monnier <monnier@iro.umontreal.ca>
18988
18989 * frame.c (Qenvironment): Remove.
18990 (syms_of_frame) <Qenvironment>: Don't initialize.
18991 (Fdelete_frame): Don't treat the `environment' param specially.
18992 * frame.h (Qenvironment): Don't declare.
18993 * callproc.c (set_initial_environment): Don't set unused frame param.
18994
18995 * frame.c (Fframe_with_environment): Remove.
18996 (syms_of_frame) <Sframe_with_environment>: Don't declare.
18997
18998 * lisp.h (Fframe_with_environment): Don't declare.
18999
190002007-10-10 Juanma Barranquero <lekktu@gmail.com>
19001
19002 * indent.c (indent_tabs_mode, last_known_column)
19003 (last_known_column_modified): Make static.
19004 (syms_of_indent) <indent-tabs-mode>: Remove redundant info in docstring.
19005
190062007-10-10 Katsumi Yamaoka <yamaoka@jpl.org>
19007
19008 * puresize.h (BASE_PURESIZE): Increase to 1170000.
19009
190102007-10-09 Jason Rumney <jasonr@gnu.org>
19011
19012 * w32term.c (x_set_window_size): Disable code that attempts to tell
19013 Lisp code about a size change before it actually happens.
19014
190152007-10-09 Richard Stallman <rms@gnu.org>
19016
19017 * xdisp.c (handle_invisible_prop): After setting up an ellipsis,
19018 return HANDLED_RETURN.
19019
190202007-10-08 Martin Rudalics <rudalics@gmx.at>
19021
19022 * keyboard.c (kbd_buffer_get_event): Break loop waiting for input
19023 when there's an unread command event.
19024
19025 * frame.c (focus_follows_mouse): Move here from frame.el to allow
19026 window autoselection act appropriately when leaving selected frame.
19027 (syms_of_frame): Initialize focus_follows_mouse.
19028 * frame.h (focus_follows_mouse): Extern it.
19029 * macterm.c (XTread_socket): When focus_follows_mouse is nil
19030 make SELECT_WINDOW_EVENT only if we don't leave the selected frame.
19031 * msdos.c (dos_rawgetc): Likewise.
19032 * w32term.c (w32_read_socket): Likewise.
19033 * xterm.c (handle_one_xevent): Likewise.
19034 * xdisp.c (syms_of_xdisp): In doc-string of
19035 mouse-autoselect-window mention focus-follows-mouse.
19036
190372007-10-08 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
19038
19039 * macterm.c (mac_load_query_font): Fix missing return value.
19040 [USE_CG_DRAWING] (mac_define_fringe_bitmap, mac_destroy_fringe_bitmap):
19041 Add BLOCK_INPUT.
19042
190432007-10-08 Richard Stallman <rms@gnu.org>
19044
19045 * xdisp.c (get_window_cursor_type): Implement documented behavior
19046 for cursor-in-non-selected-windows = t.
19047
190482007-10-08 Jason Rumney <jasonr@gnu.org>
19049
19050 * w32.c (w32_get_resource): Always close registry keys.
19051
190522007-10-08 Jason Rumney <jasonr@gnu.org>
19053
19054 * makefile.w32-in (LIBS): Add COMCTL32.
19055
19056 * w32fns.c (globals_of_w32fns): Init common controls.
19057
190582007-10-08 Richard Stallman <rms@gnu.org>
19059
19060 * image.c (our_memory_buffer): Rename from omfib_buffer.
19061
190622007-10-08 Richard Stallman <rms@gnu.org>
19063
19064 * buffer.c (Foverlays_at): Doc fix.
19065
190662007-10-08 Stefan Monnier <monnier@iro.umontreal.ca>
19067
19068 * fns.c (Fplist_put): Preserve uneven tail data.
19069
190702007-10-08 Peter O'Gorman <bug-gnu-emacs@mlists.thewrittenword.com> (tiny change)
19071
19072 * termhooks.h (enum event_kind): Remove trailing comma.
19073
19074 * frame.h (enum): Remove trailing comma.
19075
190762007-10-08 Dhruva Krishnamurthy <dhruvakm@gmail.com> (tiny change)
19077
19078 * w32proc.c (delete_child): Don't terminate threads of zombies.
19079
190802007-10-08 Martin Rudalics <rudalics@gmx.at>
19081
19082 * keyboard.h (struct kboard): New elt Vlast_repeatable_command.
19083
19084 * keyboard.c (syms_of_keyboard): Set up new Lisp variable
19085 last-repeatable-command.
19086 (init_kboard): Initialize Vlast_repeatable_command.
19087 (command_loop_1): Set it to real_this_command unless that was
19088 bound to an input event.
19089 (mark_kboards): Mark it.
19090
190912007-10-08 Richard Stallman <rms@gnu.org>
19092
19093 * eval.c (condition-case): Doc fix.
19094
190952007-10-08 Masatake YAMATO <jet@gyve.org>
19096
19097 * xfaces.c (tty_supports_face_attributes_p): Fix code
19098 for LFACE_INVERSE_INDEX and LFACE_BACKGROUND_INDEX; code
19099 was copied and not edited.
19100
191012007-10-09 Stefan Monnier <monnier@iro.umontreal.ca>
19102
19103 Add new `input-decode-map' keymap and use it for terminal
19104 escape sequences.
19105 * keyboard.h (struct kboard): Add Vinput_decode_map.
19106 Remove Vlocal_key_translation_map.
19107 * keyboard.c (read_key_sequence): Add support for input-decode-map.
19108 (init_kboard): Init input-decode-map.
19109 Replace local-key-translation-map back with key-translation-map.
19110 (syms_of_keyboard): Declare input-decode-map.
19111 Remove local-key-translation-map. Update docstrings.
19112 (mark_kboards): Mark Vinput_decode_map.
19113 Don't mark Vlocal_key_translation_map.
19114 * keymap.c (Fdescribe_buffer_bindings): Describe input-decode-map.
19115 Replace local-key-translation-map back with key-translation-map.
19116 * term.c (term_get_fkeys_1, CONDITIONAL_REASSIGN):
19117 Bind in input-decode-map rather than function-key-map.
19118
19119 * lisp.h (XSETPSEUDOVECTOR): Don't set the tag anymore.
19120 This was made redundant by the previous introduction of XSETPVECTYPE.
19121
191222007-10-09 Richard Stallman <rms@gnu.org>
19123
19124 * image.c (free_bitmap_record): Rename from Free_Bitmap_Record.
19125
191262007-09-29 Richard Stallman <rms@gnu.org>
19127
19128 * eval.c (internal_condition_case_2, internal_condition_case_1)
19129 (internal_condition_case): Reenable abort if x_catching_errors ()
19130 to see if that really happens and why.
19131
191322007-10-06 Andreas Schwab <schwab@suse.de>
19133
19134 * fileio.c (Fwrite_region): Ignore EINVAL error from fsync.
19135
191362007-10-04 Juanma Barranquero <lekktu@gmail.com>
19137
19138 * image.c (syms_of_image) <image-types>: Fix typo in docstring.
19139
191402007-10-03 Stefan Monnier <monnier@iro.umontreal.ca>
19141
19142 * frame.h (struct frame): Don't try to GC-mark menu_bar_items_used.
19143
191442007-10-02 Stefan Monnier <monnier@iro.umontreal.ca>
19145
19146 * window.h (struct window):
19147 * window.c (struct save_window_data, struct saved_window):
19148 * termhooks.h (struct terminal):
19149 * process.h (struct Lisp_Process):
19150 * frame.h (struct frame):
19151 * buffer.h (struct buffer):
19152 * lisp.h (struct Lisp_Vector, struct Lisp_Char_Table)
19153 (struct Lisp_Bool_Vector, struct Lisp_Subr, struct Lisp_Hash_Table):
19154 The size field of (pseudo)vectors is now unsigned.
19155 (ARRAY_MARK_FLAG, PSEUDOVECTOR_FLAG): Simplify accordingly.
19156
19157 * lisp.h (struct Lisp_Hash_Table): Move non-traced elements at the end.
19158 Turn `count' into an integer.
19159
19160 * fns.c (make_hash_table, hash_put, hash_remove, hash_clear)
19161 (sweep_weak_table, sweep_weak_hash_tables, Fhash_table_count):
19162 * print.c (print_object) <HASH_TABLE_P>: `count' is an int.
19163 * alloc.c (allocate_hash_table): Use ALLOCATE_PSEUDOVECTOR.
19164 (mark_object) <HASH_TABLE_P>: Use mark_vectorlike.
19165
19166 * alloc.c (allocate_pseudovector): New fun.
19167 (ALLOCATE_PSEUDOVECTOR): New macro.
19168 (allocate_window, allocate_terminal, allocate_frame)
19169 (allocate_process): Use it.
19170 (mark_vectorlike): New function.
19171 (mark_object) <FRAMEP, WINDOWP, BOOL_VECTOR_P, VECTORP>: Use it.
19172 (mark_terminals): Use it.
19173 (Fmake_bool_vector, Fmake_char_table, make_sub_char_table)
19174 (Fmake_byte_code): Use XSETPVECTYPE.
19175
19176 * frame.c (Fframe_parameters): Minor simplification.
19177
19178 * insdel.c (adjust_markers_for_insert): Generalize assertion checks.
19179
19180 * marker.c (Fmarker_buffer): Make test for odd case into a failure.
19181
19182 * buffer.c (Fget_buffer_create, init_buffer_once):
19183 * lread.c (defsubr):
19184 * window.c (Fcurrent_window_configuration): Use XSETPVECTYPE.
19185
19186 * lisp.h (ARRAY_MARK_FLAG, PSEUDOVECTOR_FLAG): Don't let them be
19187 defined differently in the m/*.h files.
19188 (XCHAR_TABLE, XBOOL_VECTOR): Add assertion checking.
19189 (XSETPVECTYPE): New macro.
19190 (XSETPSEUDOVECTOR): Use it.
19191
19192 * buffer.c (syms_of_buffer) <local-abbrev-table>: Move from abbrev.c.
19193 (DEFVAR_PER_BUFFER, defvar_per_buffer): Move from lisp.h and lread.c.
19194
19195 * lisp.h (defvar_per_buffer, DEFVAR_PER_BUFFER):
19196 * lread.c (defvar_per_buffer):
19197 * abbrev.c (syms_of_abbrev) <local-abbrev-tabl>: Move to buffer.c.
19198
19199 * window.c (candidate_window_p): Only consider as visible frames that
19200 are on the same terminal.
19201
19202 * m/ibms390x.h (MARKBIT): Remove unused macro.
19203
192042007-10-01 Juanma Barranquero <lekktu@gmail.com>
19205
19206 * lread.c (Fload): Fix typo in docstring.
19207
192082007-10-01 Michaël Cadilhac <michael@cadilhac.name>
19209
19210 * floatfns.c (Fexpt): Manually check for overflows, so that a power
19211 of a non-zero value can't yield zero.
19212
192132007-09-29 Stefan Monnier <monnier@iro.umontreal.ca>
19214
19215 * term.c (term_clear_mouse_face, term_mouse_highlight)
19216 (tty_write_glyphs_with_face): Only define is HAVE_GPM.
19217
19218 * print.c (safe_debug_print): Use XHASH.
19219
19220 * lisp.h (DECL_ALIGN, USE_LSB_TAG): Move logic to before definition of
19221 Lisp elements such as tags.
19222 (XHASH): New macro.
19223 (EQ): Use it.
19224 (SREF, SSET, STRING_COPYIN): Use SDATA.
19225 (VOID_TO_LISP, CVOID_TO_LISP, LISP_TO_VOID, LISP_TO_CVOID): Remove.
19226
19227 * alloc.c (mark_terminal): Remove left-over declaration.
19228 (enum mem_type): Replace all vector subtypes -> MEM_TYPE_VECTORLIKE.
19229 (allocate_vectorlike): Remove type argument. Adjust callers.
19230 (live_vector_p, mark_maybe_pointer, valid_lisp_object_p):
19231 Only handle the one remaining MEM_TYPE_VECTORLIKE.
19232
19233 * alloc.c (MALLOC_BLOCK_INPUT, MALLOC_UNBLOCK_INPUT): New macros
19234 to avoid unnecessary BLOCK_INPUTs when SYNC_INPUT is used.
19235 (xmalloc, xrealloc, xfree, lisp_malloc, lisp_free, lisp_align_malloc)
19236 (lisp_align_free, make_interval, allocate_string, allocate_string_data)
19237 (make_float, Fcons, allocate_vectorlike, Fmake_symbol, allocate_misc):
19238 Use them.
19239
19240 * xfaces.c (load_face_font, free_realized_face, clear_face_gcs):
19241 Don't let signal handlers run when a GC is freed but not yet NULL'ed.
19242 (x_free_gc): Remove BLOCK_INPUT since it's now redundant.
19243
192442007-09-28 Dan Nicolaescu <dann@ics.uci.edu>
19245
19246 * Makefile.in (lisp, shortlisp): Delete server.elc, it is not
19247 loaded by default.
19248
192492007-09-28 Stefan Monnier <monnier@iro.umontreal.ca>
19250
19251 * term.c (Fgpm_mouse_start): Don't signal an error if already activated
19252 on this tty.
19253 (Fgpm_mouse_stop): Only deactivate if it was activated on this tty.
19254
19255 * term.c (mouse_face_window): Rename from Qmouse_face_window.
19256 Update all users.
19257 (handle_one_term_event): Use Gpm_DrawPointer.
19258 (Fgpm_mouse_start): Rename from Fterm_open_connection.
19259 Signal errors instead of returning nil. Always return nil.
19260 (Fgpm_mouse_stop): Rename from Fterm_close_connection.
19261 Make it a noop if gpm-mouse was not activated.
19262 (syms_of_term): Update names.
19263
192642007-09-27 Stefan Monnier <monnier@iro.umontreal.ca>
19265
19266 * sysdep.c (narrow_foreground_group, widen_foreground_group): Static.
19267 (init_sys_modes): Check that gpm_tty is the current tty.
19268
19269 * alloc.c (allocate_terminal): Set the vector size to only count the
19270 lisp fields. Initialize those to nil.
19271 (mark_object): Don't treat terminals specially.
19272 (mark_terminal): Remove.
19273 (mark_terminals): Use mark_object instead.
19274
19275 * termhooks.h (struct terminal): Move all Lisp_Object fields traced by
19276 the GC to the beginning.
19277
19278 * indent.h:
19279 * indent.c: Use EMACS_INT for ints coming from Elisp data.
19280
19281 * indent.c (Fmove_to_column): Use EMACS_INT for buffer positions.
19282
192832007-09-25 Jason Rumney <jasonr@gnu.org>
19284
19285 * frame.c (make_terminal_frame): Remove special case for WINDOWSNT.
19286
19287 * w32console.c (create_w32cons_output): Remove.
19288
19289 * term.c (init_tty): Call init_sys_modes on WINDOWSNT also.
19290
19291 * sysdep.c (init_sys_modes): Use set_terminal_modes_hook.
19292 (reset_sys_modes): Use reset_terminal_modes_hook.
19293
192942007-09-24 Stefan Monnier <monnier@iro.umontreal.ca>
19295
19296 * eval.c (do_autoload): Don't output any message.
19297
192982007-09-24 Juri Linkov <juri@jurta.org>
19299
19300 * emacs.c (standard_args): Change priority of "--no-splash"
19301 from 40 to 3. Add "--no-desktop" with the same priority.
19302
193032007-09-23 Dmitry Antipov <dmantipov@yandex.ru>
19304
19305 * alloc.c (gc_sweep): Check cons cell mark bits word by word
19306 and optimize the case where they are all 1.
19307
193082007-09-23 Johannes Weiner <hannes@saeurebad.de>
19309
19310 * lisp.h (abs): Define if not defined.
19311 * keyboard.c, sound.c, w32term.c, xfaces.c, xterm.c:
19312 Don't define `abs', since it's defined in lisp.h.
19313
193142007-09-22 Eli Zaretskii <eliz@gnu.org>
19315
19316 * term.c (DEV_TTY): New macro. Provide a definition for MS-Windows.
19317 (FRAME_TERMCAP_P) [WINDOWSNT]: Don't define to zero.
19318 (Fcontrolling_tty_p, Fresume_tty, dissociate_if_controlling_tty)
19319 (init_tty): Use DEV_TTY instead of "/dev/tty".
19320 [WINDOWSNT]: No need to protect from NAME arg being null.
19321
193222007-09-21 Dan Nicolaescu <dann@ics.uci.edu>
19323
19324 * term.c (Fsuspend_tty): Run suspend-tty-functions before cleaning
19325 up the tty state.
19326
193272007-09-21 Stefan Monnier <monnier@iro.umontreal.ca>
19328
19329 * termhooks.h (term_gpm): Delete. Use gpm_tty's NULLness instead.
19330 (gpm_tty): Change its type.
19331 * term.c (term_gpm): Delete. Use gpm_tty's NULLness instead.
19332 (gpm_tty): Change its type and initialize it.
19333 (Fterm_open_connection): Check the frame is indeed a tty.
19334 Use the new gpm_tty.
19335 (Fterm_close_connection): Use the new gpm_tty.
19336 * keyboard.c (tty_read_avail_input): Use the new gpm_tty.
19337 * sysdep.c (init_sys_modes): term_gpm -> gpm_tty.
19338
193392007-09-21 Juanma Barranquero <lekktu@gmail.com>
19340
19341 * w32term.c (x_draw_glyph_string): Use strike_through_color, not
19342 underline_color, to draw strike-through.
19343
193442007-09-21 Stefan Monnier <monnier@iro.umontreal.ca>
19345
19346 * lisp.h (allocate_terminal): Declare.
19347
19348 * window.c (candidate_window_p): Consider frames that are being placed
19349 by the user as somewhere between visible and iconified.
19350 (window_loop): Prefer windows on the current frame.
19351 (Fselect_window): Move the use of select-frame to the beginning so we
19352 can just delegate all the work (it'll call us back anyway).
19353
19354 * frame.c (Qdisplay_environment_variable):
19355 * frame.h (Qdisplay_environment_variable): Delete.
19356
19357 * .gdbinit (xbacktrace): Print the arg's address rather than the value
19358 of the first arg, since that value may be a union.
19359
19360 * callproc.c (child_setup, getenv_internal): Use the frame's `display'
19361 parameter rather than Qdisplay_environment_variable. If all else
19362 fails, look for DISPLAY in initial-environment.
19363
193642007-09-21 Glenn Morris <rgm@gnu.org>
19365
19366 * Makefile.in (emacstool): Remove target.
19367 (lisp, shortlisp): Remove termdev.elc.
19368
193692007-09-21 Markus Triska <markus.triska@gmx.at>
19370
19371 * xterm.c (x_delete_display): Compile session management conditionally.
19372
193732007-09-20 Stefan Monnier <monnier@iro.umontreal.ca>
19374
19375 * callproc.c (getenv_internal_1): New function.
19376 (getenv_internal): Use it.
19377 (Fgetenv_internal): Use it. Accept an env-list as optional arg.
19378
19379 * terminal.c (get_terminal): Don't accept ints to represent terminals.
19380 (Fterminal_name, Fterminal_parameters, Fterminal_parameter)
19381 (Fset_terminal_parameter): Work with dead terminals as well.
19382 (Fmodify_terminal_parameters): Remove.
19383
19384 * terminal.c (get_terminal): Handle terminals.
19385 Make sure the terminal returned is live.
19386 (create_terminal): Use allocate_terminal.
19387 (mark_terminals): Move to alloc.c.
19388 (delete_terminal): Use terminal->name as liveness status.
19389 NULL out fields after freeing their contents.
19390 Don't deallocate the object.
19391 (Fframe_terminal): Use FRAME_TERMINAL. Return the terminal object
19392 rather than an int.
19393 (Fterminal_live_p): Accept non-integer arguments.
19394 (Fterminal_list): Return terminal objects rather than an ints.
19395
19396 * alloc.c (enum mem_type): New member for `terminal' objects.
19397 (allocate_terminal): New function.
19398 (mark_maybe_pointer, valid_lisp_object_p, mark_object):
19399 Handle terminals.
19400 (mark_terminal): New fun.
19401 (mark_terminals): Move from terminal.c.
19402
19403 * term.c (get_tty_terminal): Don't treat output_initial specially.
19404 (Fsuspend_tty, Fresume_tty): Use terminal objects rather than ints.
19405 (delete_tty): Use terminal->name as liveness status.
19406
19407 * termhooks.h (struct terminal): Make it into a pseudovector.
19408 Remove `deleted' replaced by checking `name's nullness.
19409
19410 * print.c (print_object): Handle terminals.
19411
19412 * lisp.h (enum pvec_type): New `terminal' pseudovector.
19413 (XTERMINAL, XSETTERMINAL, TERMINALP, GC_TERMINALP): New macros.
19414
19415 * frame.c (make_terminal_frame):
19416 * keyboard.c (tty_read_avail_input):
19417 * w32term.c (x_delete_terminal):
19418 * xfns.c (Fx_create_frame, x_create_tip_frame):
19419 * xterm.c (x_delete_terminal): Use terminal->name as liveness status.
19420
194212007-09-20 Glenn Morris <rgm@gnu.org>
19422
19423 * process.c (Fmake_network_process): Doc fix.
19424
194252007-09-19 Jason Rumney <jasonr@gnu.org>
19426
19427 * dispextern.h (w32_init_fringe, mac_init_fringe): Declare rif argument.
19428
194292007-09-19 Michaël Cadilhac <michael@cadilhac.name>
19430
19431 * coding.c (detect_eol_type, detect_eol_type_in_2_octet_form):
19432 Fix a C warning regarding variable constness.
19433
19434 * xterm.c (handle_one_xevent): Fix a C warning.
19435
194362007-09-18 Jason Rumney <jasonr@gnu.org>
19437
19438 * w32fns.c (Fx_focus_frame): Rename from Fw32_focus_frame.
19439
194402007-09-17 Jan Djärv <jan.h.d@swipnet.se>
19441
19442 * gtkutil.c (gdpy_def): New variable.
19443 (xg_initialize): Initialize gdpy_def.
19444 (xg_display_close): If no other display exists, set gdpy_def to a
19445 new connection.
19446
194472007-09-16 Jan Djärv <jan.h.d@swipnet.se>
19448
19449 * gtkutil.c (xg_get_image_for_pixmap): Always create a GdkPixbuf
19450 when we have no file name for the icon.
19451 (xg_tool_bar_expose_callback): Remove.
19452 (xg_create_tool_bar): Don't connect expose signal to
19453 xg_tool_bar_expose_callback.
19454 (xg_get_file_with_chooser): Move GCPRO1 after declarations.
19455
194562007-09-16 Andreas Schwab <schwab@suse.de>
19457
19458 * alloc.c (reset_malloc_hooks): Set the hooks to the previous
19459 values instead of zapping them.
19460
194612007-09-14 Glenn Morris <rgm@gnu.org>
19462
19463 * fringe.c (init_fringe_bitmap) <swap_nibble>: Move to file scope.
19464 * gtkutil.c (xg_separator_p) <separator_names>: Move to file scope.
19465 * image.c (our_memory_fill_input_buffer) <buffer>: Move to file
19466 scope and rename to omfib_buffer for clarity.
19467 (gif_load) <interlace_start, interlace_increment>: Move to file scope.
19468
194692007-09-14 Kenichi Handa <handa@m17n.org>
19470
19471 * xterm.c (handle_one_xevent): Skip decoding if nbytes is zero.
19472
194732007-09-13 Jason Rumney <jasonr@gnu.org>
19474
19475 * fringe.c (w32_init_fringe, mac_init_fringe): Add rif argument.
19476
19477 * w32term.c (w32_term_init): Pass rif to w32_init_fringe.
19478
19479 * macterm.c (mac_initialize): Don't call mac_init_fringe here.
19480 (mac_term_init): Call here instead, passing rif.
19481
194822007-09-13 Glenn Morris <rgm@gnu.org>
19483
19484 * s/hpux.h: No longer define `static' as nothing.
19485
194862007-09-13 Johan Bockgård <bojohan@gnu.org>
19487
19488 * callint.c (Fcall_interactively): Remove unused var `fun'.
19489
194902007-09-12 Romain Francoise <romain@orebokech.com>
19491
19492 * window.c (prefer_window_split_horizontally, display_buffer):
19493 Revert 2007-09-08 change.
19494
194952007-09-12 Glenn Morris <rgm@gnu.org>
19496
19497 * alloca.c: Remove file.
19498 * Makefile.in (alloca): Do not undef.
19499 (allocaobj, alloca.o): Remove.
19500 (otherobj): Remove allocaobj.
19501 * keyboard.c (command_loop_1): Remove #ifdef C_ALLOCA block.
19502 * regex.c (C_ALLOCA): Remove all references and code that was only
19503 used when this was defined.
19504 * search.c (boyer_moore): Remove #ifdef C_ALLOCA block.
19505 * xmenu.c (xmenu_show): Remove #ifdef C_ALLOCA block.
19506 * m/ibms390x.h, m/sh3el.h (C_ALLOCA): Remove references to this.
19507
19508 * Makefile.in (SOURCES, unlock, relock): Delete.
19509
19510 * gtkutil.c (cnt): Rename to menu_grab_callback_cnt for clarity.
19511 (menu_grab_callback): All uses changed.
19512
19513 * xselect.c (cnt): Rename to x_reply_selection_request_cnt for clarity.
19514 (x_reply_selection_request): All uses changed.
19515
195162007-09-11 Stefan Monnier <monnier@iro.umontreal.ca>
19517
19518 * lread.c (load_warn_old_style_backquotes): Change message to look
19519 better when it appears in the middle of byte-compiler messages.
19520
195212007-09-10 Dan Nicolaescu <dann@ics.uci.edu>
19522
19523 * s/darwin.h (MULTI_KBOARD): Only define for Carbon.
19524
19525 * xterm.c (x_create_terminal): Add comment.
19526
19527 * term.c (clear_tty_hooks, set_tty_hooks): Add comments.
19528
195292007-09-10 Richard Stallman <rms@gnu.org>
19530
19531 * xterm.c (x_term_init): Give error if can't open DISPLAY_NAME.
19532
195332007-09-10 Michaël Cadilhac <michael@cadilhac.name>
19534
19535 * lisp.h (struct Lisp_Subr): Rename `prompt' field to `intspec'.
19536 (DEFUN): Document `intspec', use it instead of `prompt'.
19537
19538 * eval.c (Fcommandp): Change `->prompt' to `->intspec'.
19539
19540 * data.c (Finteractive_form): If the interactive specification starts
19541 with a `(', use it as a Lisp form.
19542
19543 * fileio.c (Fset_file_modes): Add an interactive spec that reads a file
19544 name and file modes.
19545
19546 * callint.c (Fcall_interactively): Comment fixes.
19547
195482007-09-10 Stefan Monnier <monnier@iro.umontreal.ca>
19549
19550 * callint.c (Fcall_interactively): Use Finteractive_form also for subrs
19551 and compiled functions.
19552
195532007-09-08 Fredrik Axelsson <f.axelsson@gmail.com>
19554
19555 * window.c (prefer_window_split_horizontally): New variable.
19556 (display_buffer): Consider splitting window horizontally depending
19557 on prefer_window_split_horizontally.
19558
195592007-09-08 Eli Zaretskii <eliz@gnu.org>
19560
19561 * sysdep.c [WINDOWSNT]: Don't include sysselect.h.
19562
195632007-09-07 Stefan Monnier <monnier@iro.umontreal.ca>
19564
19565 * s/cygwin.h (GC_MARK_STACK): Enable conservative stack marking.
19566
19567 * frame.c (x_set_frame_parameters): Check number is positive before
19568 using XFASTINT.
19569
19570 * window.c (freeze_window_start): Don't presume selected_window holds
19571 a window object.
19572 (Fdisplay_buffer): Remove `register' since `buffer' needs to be gcpro'd.
19573
195742007-09-07 Angelo Graziosi <Angelo.Graziosi@roma1.infn.it> (tiny change)
19575
19576 * term.c (dissociate_if_controlling_tty): Call setsid on CYGWIN.
19577
195782007-09-07 Stefan Monnier <monnier@iro.umontreal.ca>
19579
19580 * window.c (Vsplit_window_preferred_function): New var.
19581 (Fdisplay_buffer): Use it.
19582 (syms_of_window): Export, and initialize it.
19583
195842007-09-06 Pixel <pixel@mandriva.com> (tiny change)
19585
19586 * image.c (gif_load): Fix bug: Handle nonexistent colormap.
19587
195882007-09-06 Glenn Morris <rgm@gnu.org>
19589
19590 * gtkutil.c (menu_grab_callback) <cnt>:
19591 * xselect.c (x_reply_selection_request) <cnt>: Move static
19592 variable to file scope.
19593
195942007-09-06 Stefan Monnier <monnier@iro.umontreal.ca>
19595
19596 * xdisp.c (redisplay_internal): Make sure Elisp code always sees
19597 consistent values of selected_frame and selected_window.
19598
195992007-09-04 Jason Rumney <jasonr@gnu.org>
19600
19601 * w32console.c (initialize_w32_display): Zero unused hooks.
19602
196032007-09-04 Dan Nicolaescu <dann@ics.uci.edu>
19604
19605 * term.c (Vsuspend_tty_functions, Vresume_tty_functions)
19606 (syms_of_term, Fsuspend_tty, Fresume_tty): Undo previous change.
19607
196082007-09-04 Jason Rumney <jasonr@gnu.org>
19609
19610 * term.c (init_tty) [WINDOWSNT]: Add hooks that are not accessible
19611 in w32console.c. Set up input. Remove XXX comments that have been
19612 confirmed as correct.
19613
19614 * s/ms-w32.h (MULTI_KBOARD): Define.
19615
19616 * w32console.c (one_and_only_w32cons): Remove.
19617 (initialize_w32_display): Take terminal argument.
19618
19619 * term.c (init_tty) [WINDOWSNT]: Pass terminal to
19620 initialize_w32_display.
19621 (init_tty) [MULTI_KBOARD]: Include this code on WINDOWSNT too.
19622
19623 * termhooks.h (enum event_kind) <HORIZ_WHEEL_EVENT>: New event.
19624
19625 * keyboard.c (discard_mouse_events): Discard it.
19626 (make_lispy_event): Translate it to a lisp event.
19627 (lispy_wheel_names): Add wheel-left and right events.
19628 (syms_of_keyboard): Enlarge wheel_syms.
19629
19630 * w32fns.c (w32_wnd_proc) <WM_DROPFILES>: Merge with WM_MOUSEWHEEL.
19631 <WM_MOUSEHWHEEL>: Pass new system message to lisp.
19632
19633 * w32term.h (WM_MOUSEHWHEEL): Define if system headers don't.
19634
19635 * w32term.c (construct_mouse_wheel): Make HORIZ_WHEEL_EVENT
19636 from WM_MOUSEHWHEEL.
19637 (w32_read_socket) <WM_MOUSEHWHEEL>: Treat as WM_MOUSEWHEEL.
19638
19639 * w32fns.c (x_create_tip_frame) [MULTI_KBOARD]: Get keyboard from
19640 terminal.
19641
19642 * w32term.c (w32_create_terminal) [MULTI_KBOARD]: Create a new
19643 keyboard for the terminal.
19644
196452007-09-04 Dan Nicolaescu <dann@ics.uci.edu>
19646
19647 * term.c (Vsuspend_tty_hook): Rename from Vsuspend_tty_functions.
19648 (Vresume_tty_hook): Rename from Vresume_tty_functions.
19649 (syms_of_term): Rename suspend-tty-functions to suspend-tty-hook
19650 and resume-tty-function to resume-tty-hook.
19651 (Fsuspend_tty, Fresume_tty): Use new names.
19652
196532007-09-02 Jan Djärv <jan.h.d@swipnet.se>
19654
19655 * gtkutil.c (update_frame_tool_bar): Handle stock name as a named icon
19656 if it starts with "n:".
19657
196582007-08-31 Jan Djärv <jan.h.d@swipnet.se>
19659
19660 * gtkutil.c (update_frame_tool_bar): Initialize wbutton to NULL.
19661
196622007-08-31 Stefan Monnier <monnier@iro.umontreal.ca>
19663
19664 * frame.h:
19665 * frame.c (Qterm_environment_variable): Remove.
19666 (syms_of_frame): Don't init and staticpro it.
19667
19668 * callproc.c (getenv_internal): Remove special case for $TERM.
19669
19670 * callproc.c (Vinitial_environment): New variable.
19671 (set_initial_environment): Initialize it.
19672 (syms_of_callproc): Declare it.
19673 (child_setup): Don't mess with TERM via Qterm_environment_variable; the
19674 TERM under which a process runs is never related to the TERM in which
19675 Emacs is running.
19676
196772007-08-29 Dan Nicolaescu <dann@ics.uci.edu>
19678
19679 * config.in (HAVE_WINDOW_SYSTEM): Don't undef MULTI_KBOARD here...
19680 * s/darwin.h: ... do it here.
19681
196822007-08-29 Stefan Monnier <monnier@iro.umontreal.ca>
19683
19684 * lisp.h (set_initial_environment): Rename from set_global_environment.
19685
19686 * Makefile.in (${etc}DOC): Re-add a ${EXEEXT} which seems to have been
19687 removed by mistake on the multi-tty branch.
19688
19689 * frame.c (make_terminal_frame): Yet Another Int/Lisp_Object Mixup.
19690 (Fmodify_frame_parameters): Return a value.
19691
19692 * image.c (png_load): Comment-out var only used in commented-out code.
19693
19694 * term.c (mark_ttys): Don't bother checking top_frame (incorrectly)
19695 before passing it to mark_object.
19696
19697 * xfaces.c (internal_resolve_face_name): Return a value.
19698 (internal_resolve_face_name, resolve_face_name_error): Comment out.
19699
19700 * xfns.c (check_x_display_info): Yet Another Int/Lisp_Object Mixup.
19701 (x_icon): Comment-out var only used in commented-out code.
19702
197032007-08-29 Romain Francoise <romain@orebokech.com>
19704
19705 * keyboard.c (Fset_input_mode): Don't call `Fset_quit_char' if
19706 QUIT hasn't been provided.
19707
197082007-08-29 Dan Nicolaescu <dann@ics.uci.edu>
19709
19710 * callproc.c (child_setup, getenv_internal): Use the
19711 display-environment-variable and term-environment-variable frame params.
19712 (set_initial_environment): Initialise Vprocess_environment.
19713
19714 * config.in: Disable multi-keyboard support on a mac.
19715
19716 * frame.c (Qterm_environment_variable)
19717 (Qdisplay_environment_variable): New variables.
19718 (syms_of_frame): Intern and staticpro them.
19719 (Fmake_terminal_frame): Disable output method test.
19720
19721 * frame.h: Declare them here.
19722
19723 * macfns.c (x_set_mouse_color): Get rif from the frame.
19724 (x_set_tool_bar_lines): Don't use updating_frame.
19725 (mac_window): Add 2 new parameters for consistency with other systems.
19726 (Fx_create_frame): Fix doc string. Rename the parameter. Set the
19727 frame parameters following what is done in X11 and w32. Don't use
19728 FRAME_MAC_DISPLAY_INFO.
19729 (Fx_open_connection, start_hourglass): Remove window-system check.
19730 (x_create_tip_frame): Get the keyboard from the terminal.
19731
19732 * macmenu.c: Reorder includes.
19733 (Fx_popup_menu): Use terminal specific mouse_position_hook.
19734
19735 * macterm.c (XTset_terminal_modes, XTreset_terminal_modes): Add a
19736 terminal parameter.
19737 (x_clear_frame): Add a frame parameter.
19738 (note_mouse_movement): Get rif from the frame.
19739 (mac_term_init): Initialize the terminal.
19740 (mac_initialize): Make static and move terminal initialization ...
19741 (mac_create_terminal): ... to this new function.
19742
19743 * macterm.h (struct mac_display_info): Add terminal.
19744 (mac_initialize): Delete declaration.
19745
19746 * puresize.h (BASE_PURESIZE): Increase base value to 1164000.
19747
19748 * sysdep.c: Comment out text after #endif.
19749
19750 * term.c (init_tty): Only use terminal->kboard when MULTI_KBOARD
19751 is defined. Better initialize ttys in windows. Use terminal
19752 specific mouse_position_hook.
19753
19754 * termhooks.h (union display_info): Add mac_display_info.
19755
19756 * w32fns.c (Fx_create_frame): Use kboard from the terminal.
19757 Set the default minibuffer frame, window_system and the rest of the
19758 frame parameters following what is done in X11.
19759
19760 * w32term.c (w32_initialize): Make static.
19761
19762 * xselect.c (x_handle_selection_clear): Only access
19763 terminal->kboard when MULTI_KBOARD is defined.
19764
19765 * s/darwin.h (SYSTEM_PURESIZE_EXTRA): Define here.
19766 (SYSTEM_PURESIZE_EXTRA): Only define on Carbon.
19767
197682007-08-29 Jason Rumney <jasonr@gnu.org>
19769
19770 * frame.c (Fdelete_frame): Only get kboard when MULTI_KBOARD defined.
19771 (make_terminal_frame) [WINDOWSNT]: Initialize terminal.
19772
19773 * fringe.c (w32_init_fringe w32_reset_fringes) [HAVE_NTGUI]:
19774 (mac_init_fringe) [MAC_OS]: Get rif from selected_frame.
19775
19776 * keyboard.c (restore_kboard_configuration): Only define when
19777 MULTI_KBOARD defined.
19778
19779 * makefile.w32-in: Update dependancies from Makefile.in.
19780 (OBJ1): Add terminal.$(O)
19781
19782 * term.c (dissociate_if_controlling_tty) [WINDOWSNT]:
19783 Don't define function body.
19784 (init_tty) [WINDOWSNT]: Use selected_frame for initializing.
19785
19786 * termhooks.h (display_info) [WINDOWSNT]: Add w32.
19787
19788 * w32.c (request_sigio, unrequest_sigio): Remove.
19789
19790 * w32console.c (w32con_move_cursor, w32con_clear_to_end)
19791 (w32con_clear_frame, w32con_clear_end_of_line)
19792 (w32con_ins_del_lines, w32con_insert_glyphs, w32con_write_glyphs)
19793 (w32con_delete_glyphs, w32con_set_terminal_window)
19794 (scroll_line, w32_sys_ring_bell): Add frame arg.
19795 (w32con_set_terminal_modes, w32con_reset_terminal_modes):
19796 Add terminal arg.
19797 (PICK_FRAME): Remove.
19798 (w32con_write_glyphs): Use frame specific terminal coding.
19799 (one_and_only_w32cons): New global variable.
19800 (initialize_w32_display): Use it for storing hooks.
19801 (create_w32cons_output): New function.
19802
19803 * w32inevt.c, w32inevt.h (w32_console_read_socket): Make first
19804 arg a frame.
19805
19806 * w32fns.c (x_create_tip_frame): Set terminal and ref count.
19807 Set window_system.
19808 (x_set_tool_bar_lines): Don't use updating_frame.
19809 (Fx_create_frame): Set terminal and ref count.
19810 (Fx_open_connection): Remove window-system check.
19811
19812 * w32menu.c (Fx_popup_menu): Use terminal specific mouse_position_hook.
19813
19814 * w32term.c (w32_term_init): Call add_keyboard_wait_descriptor.
19815 (w32_set_terminal_modes, w32_reset_terminal_modes): Add terminal arg.
19816 (x_clear_frame, x_delete_glyphs, w32_ring_bell, x_ins_del_lines):
19817 Add frame arg.
19818 (x_delete_terminal, w32_create_terminal): New functions.
19819 (w32_term_init): Create a terminal.
19820 (w32_initialize): Move terminal specific initialization to
19821 w32_create_terminal.
19822
19823 * w32term.h (x_output): Remove foreground_pixel and background_pixel.
19824 (w32_clear_rect, w32_clear_area): Use background from frame.
19825 (w32_display_info): Add terminal.
19826 (w32_sys_ring_bell, x_delete_display): Declare here.
19827
19828 * xdisp.c (display_menu_bar) [HAVE_NTGUI]: Check frame type.
19829
19830 * s/ms-w32.h (SYSTEM_PURESIZE_EXTRA): Bump to 50k.
19831
198322007-08-29 Kalle Olavi Niemitalo <kon@iki.fi> (tiny change)
19833
19834 * keyboard.c (interrupt_signal, handle_interrupt, Fset_quit_char):
19835 Fix get_named_tty calls for the controlling tty.
19836
198372007-08-29 ARISAWA Akihiro <ari@mbf.ocn.ne.jp> (tiny change)
19838
19839 * term.c (dissociate_if_controlling_tty)[USG]: Fix parse error.
19840
198412007-08-29 Yoshiaki Kasahara <kasahara@nc.kyushu-u.ac.jp> (tiny change)
19842
19843 * term.c (tty_insert_glyphs): Add missing first parameter.
19844
198452007-08-29 Károly Lőrentey <karoly@lorentey.hu>
19846
19847 * buffer.c (Fbuffer_list, Fbury_buffer):
19848 Take frame->buried_buffer_list into account.
19849
19850 * cm.c (current_tty): New variable, for cmputc().
19851 (cmputc): Use it.
19852 (cmcheckmagic): Add tty parameter, look up terminal streams there.
19853 (calccost): Add tty parameter. Use emacs_tputs() instead of tputs().
19854 (cmgoto): Add tty parameter. Pass it on to calccost().
19855 Use emacs_tputs() instead of tputs().
19856
19857 * cm.h (emacs_tputs): New macro to set current_tty, and then call
19858 tputs().
19859 (current_tty): New variable, for cmputc().
19860 (cmcheckmagic, cmputc, cmgoto): Add prototypes.
19861
19862 * eval.c (unwind_to_catch): Don't call x_fully_uncatch_errors.
19863 (internal_condition_case, internal_condition_case_1)
19864 (internal_condition_case_2): Don't abort when x_catching_errors.
19865
19866 * fns.c (Fyes_or_no_p): Don't try to open an X dialog on tty terminals.
19867 (Fy_or_n_p): Likewise. Use temporarily_switch_to_single_kboard to
19868 prevent crashes caused by bogus longjmps in read_char.
19869
19870 * keymap.h (Fset_keymap_parent): Add EXFUN.
19871
19872 * macterm.h (FRAME_FOREGROUND_PIXEL, FRAME_BACKGROUND_PIXEL)
19873 * w32term.h (FRAME_FOREGROUND_PIXEL, FRAME_BACKGROUND_PIXEL):
19874 Remove redundant definition.
19875
19876 * macfns.c (x_set_mouse_color, x_make_gc):
19877 Use FRAME_BACKGROUND_PIXEL and FRAME_FOREGROUND_PIXEL.
19878
19879 * w32term.c (x_free_frame_resources):
19880 Use FRAME_BACKGROUND_PIXEL and FRAME_FOREGROUND_PIXEL.
19881 (w32_initialize): Use the accessor macros for terminal characteristics.
19882
19883 * macterm.c (mac_initialize): Use Fset_input_interrupt_mode.
19884 Use the accessor macros for terminal characteristics.
19885 * msdos.c (internal_terminal_init): Use the accessor macros for
19886 terminal characteristics.
19887 (ScreenVisualBell, internal_terminal_init):
19888 Use FRAME_BACKGROUND_PIXEL and FRAME_FOREGROUND_PIXEL.
19889
19890 * termopts.h (no_redraw_on_reenter): Declare.
19891
19892 * alloc.c (emacs_blocked_malloc): Disable mallopt call.
19893 (mark_terminals, mark_ttys): Declare.
19894 (Fgarbage_collect): Call them.
19895 (mark_object): Mark buried_buffer_list.
19896
19897 * prefix-args.c: Include stdlib.h for exit.
19898
19899 * syssignal.h: Add comment.
19900
19901 * indent.c: Include stdio.h.
19902
19903 * window.h (Vinitial_window_system): Declare.
19904 (Vwindow_system): Delete declaration.
19905
19906 * fontset.c (Finternal_char_font): Use FRAME_RIF.
19907
19908 * image.c (lookup_image): Don't initialize `c' until the xasserts
19909 have been run.
19910
19911 * gtkutil.c (xg_create_frame_widgets): Use FRAME_BACKGROUND_PIXEL and
19912 FRAME_FOREGROUND_PIXEL.
19913
19914 * print.c (print_preprocess): Don't lose print_depth levels while
19915 iterating.
19916
19917 * widget.c (update_from_various_frame_slots):
19918 Use FRAME_BACKGROUND_PIXEL and FRAME_FOREGROUND_PIXEL.
19919
19920 * window.c (set_window_buffer): Don't call clear_mouse_face on tty
19921 frames.
19922 (window_internal_height): Remove bogus make_number call.
19923 (init_window_once): Call make_terminal_frame with two zero parameters.
19924
19925 * fileio.c (Fread_file_name): Update comment.
19926
19927 * callint.c (Fcall_interactively):
19928 Use temporarily_switch_to_single_kboard instead of single_kboard_state.
19929 Make sure it is correctly unwound.
19930
19931 * xsmfns.c (x_session_close): New function.
19932
19933 * coding.h (terminal_coding, safe_terminal_coding, keyboard_coding):
19934 Delete declarations.
19935
19936 * xterm.h: Remove declaration for x_fully_uncatch_errors.
19937 (x_output): Remove background_pixel and foreground_pixel fields.
19938 (x_display_info): Add new field TERMINAL. Remove KBOARD field.
19939 (x_delete_device, x_session_close): Declare.
19940
19941 * lread.c: Include setjmp.h. Update declaration of `read_char'.
19942 (read_filtered_event): Call `read_char' with a local
19943 `wrong_kboard_jmpbuf'.
19944
19945 * minibuf.c (read_minibuf): Call temporarily_switch_to_single_kboard.
19946 Don't call single_kboard_state. Use FRAME_RIF.
19947
19948 * process.c (Fmake_network_process): Don't unrequest_sigio on modern
19949 systems.
19950
19951 * lisp.h (set_process_environment): Rename to `set_global_environment'.
19952 (Fframe_with_environment, Fset_input_meta_mode)
19953 (Fset_quit_char): EXFUN.
19954 (x_create_device, tty_output, terminal, tty_display_info): Declare.
19955 (init_sys_modes, reset_sys_modes): Update prototypes.
19956 (init_all_sys_modes, reset_all_sys_modes): New prototypes.
19957
19958 * keyboard.h (struct kboard): Add new fields Vlocal_function_key_map,
19959 Vlocal_key_translation_map, and Vkeyboard_translate_table.
19960 (Vfunction_key_map, Vkeyboard_translate_table, single_kboard_state):
19961 Delete declarations.
19962 (Vfunction_key_map, Vkey_translation_map, push_kboard, pop_kboard)
19963 (temporarily_switch_to_single_kboard, tty_read_avail_input):
19964 New declarations.
19965
19966 * emacs.c (main): Don't call init_sys_modes(), the new term_init()
19967 already does that during init_display(). Call syms_of_keymap
19968 before syms_of_keyboard. Call `syms_of_terminal'.
19969 Call set_initial_environment, not set_process_environment.
19970 (shut_down_emacs): Call reset_all_sys_modes() instead of
19971 reset_sys_modes().
19972
19973 * xfaces.c (x_free_gc): Protect xassert with GLYPH_DEBUG.
19974 (internal_resolve_face_name, resolve_face_name_error): New functions.
19975 (resolve_face_name): Protect against loops and errors thrown by Fget.
19976 (realize_default_face): Don't use FRAME_FONT unless frame is an X frame.
19977 (Ftty_supports_face_attributes_p): Update tty_capable_p call.
19978
19979 * scroll.c: Replace CURTTY() with local variables throughout the
19980 file (where applicable).
19981 (calculate_scrolling, calculate_direct_scrolling)
19982 (scrolling_1, scroll_cost): Use the accessor macros for terminal
19983 characteristics.
19984
19985 * keymap.c (Vfunction_key_map): Remove.
19986 (Fdescribe_buffer_bindings): Update references to Vfunction_key_map.
19987 (syms_of_keymap): Remove DEFVAR for Vfunction_key_map.
19988 (Vkey_translation_map): Remove.
19989 (syms_of_keymap): Remove DEFVAR for key-translation-map.
19990 (Fdescribe_buffer_bindings)
19991 (read_key_sequence, init_kboard, syms_of_keyboard, mark_kboards):
19992 Update for terminal-local key-translation-map.
19993
19994 * Makefile.in (callproc.o): Update dependencies.
19995 (lisp, shortlisp): Add termdev.elc.
19996 (obj): Add terminal.o.
19997 (terminal.o): Add dependencies.
19998 [HAVE_CARBON]: Make terminal.o depend on macgui.h.
19999 (data.o, fns.o): Add termhooks.h dependency.
20000 (SOME_MACHINE_LISP): Add dnd.elc.
20001 (minibuf.o): Fix typo.
20002 Update dependencies.
20003
20004 * data.c (do_symval_forwarding, store_symval_forwarding)
20005 (find_symbol_value): Use the selected frame's keyboard, not
20006 current_kboard.
20007
20008 * .gdbinit (init_sys_modes): Use Vinitial_window_system instead of
20009 Vwindow_system.
20010
20011 * xmenu.c (Fx_menu_bar_open) [USE_X_TOOLKIT, USE_GTK]: Rename from
20012 Fmenu_bar_open.
20013 (syms_of_xmenu): Update defsubr.
20014 (mouse_position_for_popup, Fx_popup_menu)
20015 (Fx_popup_dialog, x_activate_menubar, update_frame_menubar)
20016 (set_frame_menubar, free_frame_menubar)
b97439ce 20017 (create_and_show_popup_menu, xmenu_show)
aac0c6e3
MR
20018 (create_and_show_dialog, xdialog_show, xmenu_show): Abort if not
20019 an X frame.
20020
20021 * xselect.c (x_own_selection): Abort if not an X frame.
20022 (some_frame_on_display): Check if it is an X frame.
20023 (x_handle_selection_clear): Deal with MULTI_KBOARD.
20024
20025 * coding.c: Include frame.h and termhooks.h.
20026 (terminal_coding, keyboard_coding): Delete.
20027 (Fset_terminal_coding_system_internal)
20028 (Fset_keyboard_coding_system_internal)
20029 (Fkeyboard_coding_system)
20030 (Fterminal_coding_system): Add a terminal parameter.
20031 Get terminal_coding from the terminal.
20032 (init_coding_once): Don't call setup_coding_system here.
20033
20034 * dispextern.h (set_scroll_region, turn_off_insert)
20035 (turn_off_highlight, background_highlight, clear_end_of_line_raw)
20036 (tty_clear_end_of_line, tty_setup_colors)
20037 (delete_tty, updating_frame)
20038 (produce_special_glyphs, produce_glyphs, write_glyphs)
20039 (insert_glyphs): Remove.
20040 (raw_cursor_to, clear_to_end, tty_turn_off_insert)
20041 (tty_turn_off_highlight, get_tty_size): Add declaration.
20042 (tabs_safe_p, init_baud_rate, get_tty_terminal): Update prototypes.
20043
20044 * frame.h (enum output_method): Add output_initial.
20045 (struct x_output): Delete.
20046 (FRAME_FOREGROUND_PIXEL, FRAME_BACKGROUND_PIXEL):
20047 Access foreground_pixel and background_pixel directly from the frame.
20048 (tty_display): Delete.
20049 (struct frame): Add buried_buffer_list, foreground_pixel,
20050 background_pixel and terminal. Delete kboard.
20051 (union output_data): Add tty.
20052 (FRAME_KBOARD): Get the kboard from the terminal.
20053 (FRAME_INITIAL_P): New macro.
20054 (Qtty, Qtty_type, Qterminal, Qterminal_live_p, Qenvironment)
20055 (Qterm_environment_variable, Qdisplay_environment_variable)
20056 (make_terminal_frame, Qburied_buffer_list, Qwindow_system):
20057 New declarations.
20058
20059 * termchar.h (tty_output, tty_display_info): New structures.
20060 (tty_list): Declare.
20061 (FRAME_TTY, CURTTY): New macros.
20062 (must_write_spaces, min_padding_speed, fast_clear_end_of_line)
20063 (line_ins_del_ok, char_ins_del_ok, scroll_region_ok)
20064 (scroll_region_cost, memory_below_frame, fast_clear_end_of_line)
20065 (dont_calculate_costs, no_redraw_on_reenter): Remove declarations.
20066
20067 * callproc.c: Include frame.h and termhooks.h, for terminal
20068 parameters.
20069 (add_env): New function.
20070 (child_setup): Use it.
20071 (child_setup, getenv_internal): Handle the new Vprocess_environment.
20072 (getenv_internal): Fix get_terminal_param call.
20073 (Fgetenv_internal, egetenv): Update doc.
20074 (syms_of_callproc): Initialize Vprocess_environment to nil.
20075 Register and initialize them. Remove obsolete defvars. Update doc
20076 strings.
20077 (child_setup): Handle Vlocal_environment_variables.
20078 (getenv_internal): Add terminal parameter.
20079 Handle Vlocal_environment_variables.
20080 (Fgetenv_internal): Add terminal parameter.
20081 (child_setup, getenv_internal, Fgetenv_internal): Store the local
20082 environment in a frame (not terminal) parameter. Update doc strings.
20083 (set_initial_environment): Rename from set_global_environment.
20084 Store Emacs environment in initial frame parameter.
20085
20086 * xdisp.c (redisplay_internal): Update references to
20087 `previous_terminal_frame'.
20088 (display_mode_line, Fformat_mode_line): Replace calls to
20089 `push_frame_kboard' with `push_kboard'.
20090 (get_glyph_string_clip_rects): Add extra parentheses and
20091 braces to prevent compiler warnings.
20092 (calc_pixel_width_or_height): Add xassert to check that the
20093 frame is alive. Don't call `lookup_image' on a termcap frame.
20094 (message2_nolog, message3_nolog, redisplay_internal)
20095 (set_vertical_scroll_bar, redisplay_window, check_x_display_info)
20096 (x_set_scroll_bar_foreground, x_set_scroll_bar_background)
20097 (Fx_create_frame, Fxw_display_color_p, Fx_display_grayscale_p)
20098 (Fx_display_pixel_width, Fx_display_pixel_height)
20099 (Fx_display_planes, Fx_display_color_cells)
20100 (Fx_server_max_request_size, Fx_server_vendor, Fx_server_version)
20101 (Fx_display_screens, Fx_display_mm_height, Fx_display_mm_width)
20102 (Fx_display_backing_store, Fx_display_visual_class)
20103 (Fx_display_save_under, Fx_close_connection, x_create_tip_frame):
20104 Use FRAME_TERMINAL_P, FRAME_WINDOW_P, FRAME_TTY and FRAME_RIF.
20105
20106 * xfns.c (x_set_foreground_color x_set_background_color)
20107 (x_set_mouse_color, x_set_cursor_color, x_make_gc):
20108 Use FRAME_BACKGROUND_PIXEL and FRAME_FOREGROUND_PIXEL.
20109 (Fx_create_frame, x_create_tip_frame, build_string, x_window)
20110 (Fx_create_frame, x_create_tip_frame): Don't create frames on a
20111 terminal that is being deleted.
20112 (Fx_create_frame): Use `store_frame_param' to set `window-system'
20113 frame parameter, and make sure it overrides any user-supplied setting.
20114 (Fx_close_connection, Fx_synchronize): Unify argument names with
20115 the rest of the DEFUNs.
20116
20117 * dispnew.c (Fsend_string_to_terminal): Update call to
20118 `get_tty_terminal'.
20119 (Fredraw_frame, Fsend_string_to_terminal)
20120 (Fsend_string_to_terminal, init_display): Use FRAME_RIF,
20121 FRAME_TERMCAP_P and FRAME_TTY.
20122 (window_change_signal): Don't believe width/height values that are
20123 impossibly small.
20124 (Vinitial_window_system): Rename from Vwindow_system.
20125 (termscript, Wcm, rif): Delete.
20126
20127 * termhooks.h (struct terminal): New struct containing the
20128 previously global text display hooks and new members NAME,
20129 DELETED and PARAM_ALIST.
20130 (FRAME_TERMINAL, TERMINAL_TERMINAL_CODING)
20131 (TERMINAL_KEYBOARD_CODING, TERMINAL_ACTIVE_P, FRAME_WINDOW_P)
20132 (FRAME_RIF): New macros.
20133 (get_terminal_param, get_device): New declarations.
20134 (termscript): Delete declaration.
20135
20136 * xterm.c (x_initialize): Use Fset_input_interrupt_mode.
20137 (XTflash, x_free_frame_resources, x_scroll_bar_create)
20138 (x_scroll_bar_set_handle): Use FRAME_BACKGROUND_PIXEL and
20139 FRAME_FOREGROUND_PIXEL.
20140 (x_fully_uncatch_errors): Disable definition.
20141 (x_scroll_bar_expose): Fix reference to foreground pixel.
20142 (XTread_socket): Disable loop on all X displays.
20143 (x_delete_terminal): Don't set terminal->deleted and let
20144 delete_terminal delete the frames on the terminal.
20145 (x_delete_display): Doc update to reflect changes in
20146 delete_terminal.
20147 (x_display_info) <terminal>: Move member earlier in the struct.
20148 (deleting_tty): Remove old variable.
20149 (Fsuspend_tty): Call clear_tty_hooks.
20150 (Fresume_tty, init_tty): Call set_tty_hooks.
20151 (Ftty_display_color_p, Ftty_display_color_cells): Don't throw
20152 errors on X frames.
20153 (x_catch_errors_unwind): Abort if x_error_message is NULL.
20154 (handle_one_xevent): Initialize `f' to NULL.
20155 (x_delete_terminal, x_create_terminal): New functions.
20156 (XTset_terminal_modes, XTreset_terminal_modes)
20157 (XTread_socket, x_connection_closed, x_term_init)
20158 (x_term_init, x_delete_display): Add terminal parameter.
20159 (x_term_init) [!HAVE_GTK_MULTIDISPLAY]: Refuse to create secondary
20160 X connections.
20161
20162 * frame.c: Include termchar.h.
20163 (Qterminal, Qterminal_live_p, Qburied_buffer_list, Qtty, Qtty_type)
20164 (Qwindow_system, Qenvironment, Qterm_environment_variable)
20165 (Qdisplay_environment_variable): New vars.
20166 (Fframep): Deal with output_initial.
20167 (Fframe-live-p): Doc fix.
20168 (Fwindow-system): New function.
20169 (x_set_screen_gamma, store_frame_param): Fix compilation errors.
20170 (make_terminal_frame): Don't create frames on a terminal that is
20171 being deleted. Use FRAME_BACKGROUND_PIXEL and FRAME_FOREGROUND_PIXEL.
20172 (store_frame_param): Check for found_for_frame before calling XFRAME.
20173 (Fmake_terminal_frame): Handle NULL tty names correctly.
20174 (syms_of_frame): Enhance doc string of `default-frame-alist'.
20175 (Fdelete_frame): Remove unused variable `count'. Don't allow other
20176 frames to refer to a deleted frame in their 'environment parameter.
20177 (Fframe_with_environment): New function.
20178 (syms_of_frame): Defsubr it. Initialize and staticpro Qenvironment.
20179 (get_future_frame_param): New function.
20180 (Fmake_terminal_frame): Use it.
20181 (x_set_frame_parameters, x_set_screen_gamma): Use FRAME_RIF.
20182
20183 * sysdep.c (init_sys_modes, reset_sys_modes): Update for renames.
20184 * sysdep.c (reset_sys_modes): Update for renames.
20185
20186 * keyboard.c (tty_read_avail_input): New function.
20187 (Fset_input_interrupt_mode, Fset_output_flow_control): New functions.
20188 (syms_of_keyboard): Defsubr them.
20189 (Fset_input_meta_mode, Fset_quit_char): New functions.
20190 (Fset_input_mode): Split to above functions.
20191 (read_char_minibuf_menu_prompt): Add wrong_kboard_jmpbuf
20192 parameter. Use it in call to `read_char'.
20193 (read_char): Declare. Update call to `read_char_minibuf_menu_prompt'.
20194 Set wrong_kboard_jmpbuf correctly in recursive calls.
20195 Use current_kboard to access Vkeyboard_translate_table.
20196 Enhance comment before extra longjmp to wrong_kboard_jmpbuf.
20197 Add wrong_kboard_jmpbuf parameter to allow for recursive calls.
20198 Update longjmp invocations. Remember the original current_kboard,
20199 and longjmp to `wrong_kboard_jmpbuf' when a filter, timer or sentinel
20200 changes it. Comment out unnecessary calls to
20201 `record_single_kboard_state' and `any_kboard_state'.
20202 Update recursive calls.
20203 (wrong_kboard_jmpbuf): Remove global variable.
20204 (read_key_sequence): Remove unused variable wrong_kboard_jmpbuf.
20205 Handle deleted interrupted_kboards correctly; that is a legal
20206 case. Add `wrong_kboard_jmpbuf' local variable. Update setjmp
20207 and read_char calls. Abort if interrupted_kboard died in read_char.
20208 (any_kboard_state, single_kboard_state)
20209 (push_frame_kboard): Remove function.
20210 (pop_kboard): Switch out of single_kboard mode if the kboard has
20211 been deleted. Remove unused variable. Help debugging by not
20212 changing current_kboard unnecessarily. Set current_kboard to the
20213 kboard of the selected frame when the stored kboard object has
20214 been deleted before pop_kboard.
20215 (temporarily_switch_to_single_kboard): Change first parameter to a
20216 frame pointer. Throw an error when caller wants to change kboards
20217 while in single_kboard mode. Don't push_kboard if we weren't in
20218 single kboard state. Don't pop_kboard if we popped into any
20219 kboard state.
20220 (restore_kboard_configuration): Abort if pop_kboard changed the
20221 kboard in single_kboard mode. Call pop_kboard only after setting
20222 up single_kboard mode.
20223 (Frecursive_edit): Switch to single_kboard mode only in nested
20224 command loops.
20225 (cmd_error, command_loop, command_loop_1, timer_check):
20226 Comment out unnecessary call to `any_kboard_state' and
20227 `record_single_kboard_state'.
20228 (delete_kboard): Exit single_kboard mode if we have just deleted
20229 that kboard. Use FRAME_KBOARD.
20230 (interrupt_signal): Use `Fkill_emacs' to exit Emacs, not
20231 `fatal_error_signal'.
20232 (record_single_kboard_state): Don't push_kboard if we weren't in
20233 single kboard state. Don't pop_kboard if we popped into any
20234 kboard state.
20235 (push_frame_kboard): Rename to push_kboard.
20236 (kbd_buffer_get_event): Use FRAME_TERMINAL.
20237 (read_avail_input): Read input from all terminals.
20238 (mark_kboards): Also mark Vkeyboard_translate_table.
20239 (kbd_buffer_store_event_hold): Simplify condition.
20240 (read_key_sequence): Reinitialize fkey and keytran at each replay.
20241 (Vkeyboard_translate_table): Move to struct kboard.
20242 (init_kboard): Initialize Vkeyboard_translate_table.
20243 (syms_of_keyboard): Use DEFVAR_KBOARD to define
20244 Vkeyboard_translate_table. Update doc strings. Update docs of
20245 local-function-key-map and function-key-map.
20246
20247 * terminal.c: New file.
20248
20249 * term.c: Include errno.h.
20250 (Vring_bell_function, device_list, initial_device)
20251 (next_device_id, ring_bell, update_begin, update_end)
20252 (set_terminal_window, cursor_to, raw_cursor_to)
20253 (clear_to_end, clear_frame, clear_end_of_line)
20254 (write_glyphs, insert_glyphs, delete_glyphs, ins_del_lines)
20255 (Fdisplay_name, create_device, delete_device): Move to terminal.c.
20256 (syms_of_term): Move their initialization to terminal.c.
20257 (get_tty_terminal, Fdisplay_tty_type, Ftty_display_color_p)
20258 (Ftty_display_color_cells)
20259 (Ftty_no_underline, Fsuspend_tty, Fresume_tty, create_tty_output)
20260 (clear_tty_hooks, set_tty_hooks)
20261 (init_tty, maybe_fatal): New functions.
20262 (Ftty_type): Return nil if terminal is not on a tty instead of
20263 throwing an error. Doc update.
20264 (syms_of_term) <Vsuspend_tty_functions, Vresume_tty_functions>:
20265 Doc update. Initialize new subrs and variables.
20266 (delete_tty): Use terminal->deleted.
20267 (tty_set_terminal_modes): Rename from set_terminal_modes.
20268 (tty_reset_terminal_modes): Rename from reset_terminal_modes.
20269 (set_scroll_region): Rename to `tty_set_scroll_region'.
20270 (turn_on_insert): Rename to `tty_turn_on_insert'.
20271 (turn_off_insert): Rename to `tty_turn_off_insert'.
20272 (turn_off_highlight): Rename to `tty_turn_off_highlight'.
20273 (turn_on_highlight): Rename to `tty_turn_on_highlight'.
20274 (toggle_highligh): Rename to `tty_toggle_highlight'.
20275 (background_highlight): Rename to `tty_background_highlight'.
20276 (highlight_if_desired): Rename to `tty_highlight_if_desired'.
20277 (tty_ring_bell, tty_update_end, tty_set_terminal_window)
20278 (tty_set_scroll_region, tty_background_highlight)
20279 (tty_cursor_to, tty_raw_cursor_to, tty_clear_to_end)
20280 (tty_clear_frame, tty_clear_end_of_line, tty_write_glyphs)
20281 (tty_insert_glyphs, tty_delete_glyphs, tty_ins_del_lines)
20282 (term_get_fkeys, tty_setup_colors, dissociate_if_controlling_tty):
20283 Add static modifier.
20284 (tty_reset_terminal_modes, tty_set_terminal_window)
20285 (tty_set_scroll_region, tty_background_highlight)
20286 (tty_highlight_if_desired, tty_cursor_to)
20287 (tty_raw_cursor_to, tty_clear_to_end, tty_clear_frame)
20288 (tty_clear_end_of_line, tty_write_glyphs, tty_insert_glyphs)
20289 (tty_delete_glyphs, tty_ins_del_lines, turn_on_face): Update for
20290 renames.
20291
202922007-08-28 Jan Djärv <jan.h.d@swipnet.se>
20293
20294 * keyboard.c: Qrtl is new.
20295 (parse_tool_bar_item): Handle :rtl keyword.
20296 (syms_of_keyboard): Intern :rtl keyword.
20297
20298 * dispextern.h (enum tool_bar_item_idx): Add TOOL_BAR_ITEM_RTL_IMAGE.
20299
20300 * gtkutil.c (xg_tool_bar_expose_callback): Just do SET_FRAME_GARBAGED
20301 so no Lisp code is executed.
20302 (file_for_image, find_rtl_image): New functions.
20303 (xg_get_image_for_pixmap): Use file_for_image.
20304 (update_frame_tool_bar): If direction is RTL, use RTL image if
20305 defined. Use Gtk stock images if defined.
20306
203072007-08-27 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
20308
20309 * macterm.c (x_draw_composite_glyph_string_foreground): Draw rectangle
20310 for nonexistent or zero-width glyph in composition glyph.
20311
203122007-08-25 Stefan Monnier <monnier@iro.umontreal.ca>
20313
20314 * m/amdx86-64.h: Redirect to intel386.h if compiling for i386.
20315
20316 * xdisp.c (Finvisible_p): New function.
20317 (syms_of_xdisp): defsubr it.
20318
203192007-08-24 Juanma Barranquero <lekktu@gmail.com>
20320
20321 * image.c (syms_of_image) <image-library-alist, cross-disabled-images>:
20322 Doc fixes.
20323
203242007-08-24 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
20325
20326 * mac.c [MAC_OSX] (select_and_poll_event, sys_select): Fix last changes.
20327
203282007-08-24 Martin Rudalics <rudalics@gmx.at>
20329
20330 * fileio.c (Finsert_file_contents): Consult CHARS_MODIFF to tell
20331 whether decoding has modified buffer contents.
20332
203332007-08-24 Jason Rumney <jasonr@gnu.org>
20334
20335 * image.c [HAVE_NTGUI]: Define dynamic loaded functions for SVG.
20336 (Qgdk_pixbuf, Qglib) [HAVE_NTGUI]: New symbols.
20337 (syms_of_image) [HAVE_NTGUI]: Intern and staticpro them.
20338 (init_svg_functions) [HAVE_NTGUI]: New function.
20339 (fn_g_type_init, fn_g_object_unref, fn_g_error_free): New #defines.
20340 (svg_load_image): Use them.
20341 (svg_load_image) [HAVE_NTGUI]: Implement background.
20342
203432007-08-23 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
20344
20345 * Makefile.in (RSVG_LIBS, RSVG_CFLAGS): New variables.
20346 (ALL_CFLAGS): Use ${RSVG_CFLAGS} instead of @RSVG_CFLAGS@.
20347 (LIBX): Remove @RSVG_LIBS@.
20348 (LIBES): Add $(RSVG_LIBS).
20349
20350 * image.c (svg_load_image): Blend with specified background if exists.
20351 Use IMAGE_BACKGROUND. Add Mac OS Support.
20352
20353 * mac.c (wakeup_from_rne_enabled_p) [MAC_OSX]: Remove variable.
20354 (ENABLE_WAKEUP_FROM_RNE, DISABLE_WAKEUP_FROM_RNE) [MAC_OSX]:
20355 Remove macros.
20356 [MAC_OSX] (socket_callback): Do nothing.
20357 [MAC_OSX] (select_and_poll_event): Use CFRunLoopRunInMode instead of
20358 ReceiveNextEvent.
20359 [MAC_OSX] (sys_select): Likewise. Don't set context as argument to
20360 socket_callback.
20361 (mac_wakeup_from_rne) [MAC_OSX]: Do nothing.
20362
203632007-08-22 Glenn Morris <rgm@gnu.org>
20364
20365 * image.c (x_find_image_file): Search in etc/images/ rather than etc/.
20366
203672007-08-22 Paul Pogonyshev <pogonyshev@gmx.net>
20368
20369 * Makefile.in (ALL_CFLAGS, LIBX): Add RSVG_LIBS.
20370
20371 * image.c: Add support for SVG images. Some additional comments
20372 by Joakim Verona <joakim@verona.se>. When HAVE_RSVG is defined:
20373 (svg_image_p): New function to test for SVG image.
20374 (svg_load): New function to load SVG image.
20375 (svg_load_image): New function, helper for svg_load.
20376 (Qsvg): New Lisp_object.
20377 (svg_keyword_index): New enum.
20378 (svg_format): New static `image_keyword' struct.
20379 (svg_type): New static `image_type' struct.
20380 (librsvg/rsvg.h): Include it.
20381
203822007-08-23 Stefan Monnier <monnier@iro.umontreal.ca>
20383
20384 * lread.c (load_warn_old_style_backquotes): Fix up array size typo.
20385
203862007-08-22 Stefan Monnier <monnier@iro.umontreal.ca>
20387
20388 * lread.c (Qold_style_backquotes): New var.
20389 (syms_of_lread): Init and staticpro it.
20390 (load_warn_old_style_backquotes): New fun.
20391 (Fload): Use them to warn about old style backquotes.
20392 (end_of_file_error, Fload): Remove unused vars.
20393
20394 * lisp.h (Fclear_face_cache, Fx_send_client_event): Declare.
20395
20396 * lread.c (Vold_style_backquotes): New var.
20397 (syms_of_lread): Init and export it to Elisp.
20398 (read1): Set it when we find an old-style (back)quote.
20399
204002007-08-22 Jason Rumney <jasonr@gnu.org>
20401
20402 * w32reg.c (SYSTEM_DEFAULT_RESOURCES): Add missing NULL terminator.
20403
204042007-08-22 Katsumi Yamaoka <yamaoka@jpl.org>
20405
20406 * puresize.h (BASE_PURESIZE): Increase to 1140000.
20407
204082007-08-19 Richard Stallman <rms@gnu.org>
20409
20410 * eval.c (Ffunction, Fquote): Signal error if not 1 argument.
20411
204122007-08-19 Andreas Schwab <schwab@suse.de>
20413
20414 * alloc.c (pure): Round PURESIZE up.
20415
204162007-08-17 Jan Djärv <jan.h.d@swipnet.se>
20417
20418 * xterm.c (handle_one_xevent): Remove check that mouse click is in
20419 active frame.
20420
204212007-08-16 Richard Stallman <rms@gnu.org>
20422
20423 * eval.c (Fcommandp): Add parens to clarify.
20424
20425 * minibuf.c (Fall_completions): Use enum for type of table.
20426
20427 * emacs.c (USAGE2): Improve text.
20428
204292007-08-15 Philippe Waroquiers <philippe.waroquiers@eurocontrol.int>
20430
20431 * term.c (tty_default_color_capabilities): Declare static
20432 variables in file scope, to avoid HPUX compiler problem.
20433
204342007-08-13 Jan Djärv <jan.h.d@swipnet.se>
20435
20436 * gtkutil.c (update_frame_tool_bar): Use -1 as index
20437 to gtk_toolbar_insert.
20438
204392007-08-13 Stefan Monnier <monnier@iro.umontreal.ca>
20440
20441 * fileio.c (Finsert_file_contents): Yet Another Int/Lisp_Object Mixup.
20442
20443 * insdel.c (reset_var_on_error): New fun.
20444 (signal_before_change, signal_after_change):
20445 Use it to reset (after|before)-change-functions to nil in case of error.
20446 Bind inhibit-modification-hooks to t.
20447 Don't bind (after|before)-change-functions to nil while they run.
20448
204492007-08-11 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
20450
20451 * xterm.c (x_draw_image_glyph_string): Adjust stipple origin when
20452 filling pixmap with stippled background.
20453
204542007-08-10 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
20455
20456 * macterm.c [TARGET_API_MAC_CARBON] (mac_handle_window_event):
20457 Don't use invisible frame as parent window for repositioning.
20458
204592007-08-10 Stefan Monnier <monnier@iro.umontreal.ca>
20460
20461 * print.c (new_backquote_output): Rename from old_backquote_output.
20462 (print): Inverse its logic (according to its name) so as to match the
20463 behavior of new_backquote_flag in lread.c.
20464
204652007-08-09 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
20466
20467 * gmalloc.c (posix_memalign): New function.
20468
20469 * macterm.c (frame_highlight, frame_unhighlight): Don't call
20470 ActivateControl/DeactivateControl here.
20471 [USE_MAC_TOOLBAR] (free_frame_tool_bar): Suppress animation when
20472 frame-notice-user-settings is non-nil.
20473 [USE_MAC_FONT_PANEL] (mac_handle_font_event): Also record parameter
20474 for kEventParamFMFontStyle.
20475 [TARGET_API_MAC_CARBON] (mac_handle_keyboard_event): Don't check
20476 mac_pass_command_to_system and mac_pass_control_to_system here.
20477 (XTread_socket): Call ActivateControl/DeactivateControl here.
20478 (XTread_socket) [TARGET_API_MAC_CARBON]:
20479 Check mac_pass_command_to_system and mac_pass_control_to_system here.
20480 (mac_handle_window_event) [USE_MAC_TOOLBAR]: Add further workaround
20481 for window repositioning.
20482
204832007-08-08 Glenn Morris <rgm@gnu.org>
20484
20485 * Replace `iff' in doc-strings and comments.
20486
204872007-08-07 Chong Yidong <cyd@stupidchicken.com>
20488
20489 * xdisp.c (move_it_by_lines): Remove incorrect optimization.
20490
204912007-08-07 Martin Rudalics <rudalics@gmx.at>
20492
20493 * fileio.c (Finsert_file_contents): Run format-decode and
20494 after_insert_file_functions on entire buffer when REPLACE is
20495 non-nil and inhibit modification_hooks and point_motion_hooks.
20496 For consistency, run after_insert_file_functions iff something
20497 got inserted. Move signal_after_change and update_compositions
20498 after code running after_insert_file_functions. Make sure that
20499 undo_list doesn't record intermediate steps of the decoding process.
20500
205012007-08-07 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
20502
20503 * emacs.c (main)
20504 [HAVE_GTK_AND_PTHREAD && !SYSTEM_MALLOC && !DOUG_LEA_MALLOC]:
20505 Call malloc_enable_thread on interactive startup.
20506
20507 * gmalloc.c (_malloc_thread_enabled_p) [USE_PTHREAD]: New variable.
20508 (LOCK, UNLOCK, LOCK_ALIGNED_BLOCKS, UNLOCK_ALIGNED_BLOCKS)
20509 [USE_PTHREAD]: Conditionalize with it.
20510 (malloc_atfork_handler_prepare, malloc_atfork_handler_parent)
20511 (malloc_atfork_handler_child, malloc_enable_thread) [USE_PTHREAD]:
20512 New functions.
20513
205142007-08-06 Chong Yidong <cyd@stupidchicken.com>
20515
20516 * xdisp.c (redisplay_window): When restoring original buffer
20517 position, make sure it is still valid.
20518
20519 * image.c (png_load): Ignore png-supplied background color.
20520
205212007-08-06 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
20522
20523 * mac.c [TARGET_API_MAC_CARBON] (cfdate_to_lisp): Obtain microsec value.
20524 Use kCFAbsoluteTimeIntervalSince1970.
20525
20526 * macmenu.c (quit_dialog_event_loop) [TARGET_API_MAC_CARBON]:
20527 New variable.
20528 [TARGET_API_MAC_CARBON] (mac_handle_dialog_event): Set it if dialog
20529 event loop should be quit.
20530 [TARGET_API_MAC_CARBON] (create_and_show_dialog) [!MAC_OSX]:
20531 Quit dialog event loop if quit_dialog_event_loop is set.
20532
20533 * macselect.c [!TARGET_API_MAC_CARBON]: Include Scrap.h.
20534 (Selection): New typedef. Use instead of ScrapRef.
20535 (mac_get_selection_from_symbol): Rename from get_scrap_from_symbol.
20536 (mac_valid_selection_target_p): Rename from valid_scrap_target_type_p.
20537 (mac_clear_selection): Rename from clear_scrap.
20538 (get_flavor_type_from_symbol): New argument SEL and subsume function of
20539 scrap_has_target_type. All uses changed.
20540 (mac_get_selection_ownership_info, mac_valid_selection_value_p)
20541 (mac_selection_has_target_p): New functions.
20542 (mac_put_selection_value): Rename from put_scrap_string.
20543 (mac_get_selection_value): Rename from get_scrap_string.
20544 (mac_get_selection_target_list): Rename from get_scrap_target_type_list.
20545 (put_scrap_private_timestamp, scrap_has_target_type)
20546 (get_scrap_private_timestamp): Remove functions.
20547 (SCRAP_FLAVOR_TYPE_EMACS_TIMESTAMP): Remove define.
20548 (x_own_selection, x_get_local_selection):
20549 Use mac_valid_selection_value_p.
20550 (x_own_selection): Don't use put_scrap_private_timestamp.
20551 Record OWNERSHIP-INFO into Vselection_alist instead.
20552 (x_get_local_selection): Don't check type if request is local.
20553 (Fx_selection_owner_p): Don't use get_scrap_private_timestamp.
20554 Detect ownership change with OWNERSHIP-INFO in Vselection_alist instead.
20555
205562007-08-04 Jan Djärv <jan.h.d@swipnet.se>
20557
20558 * gtkutil.c (xg_tool_bar_callback): Generate two TOOL_BAR_EVENT:s,
20559 add comment explaining why.
20560
205612007-08-03 Richard Stallman <rms@gnu.org>
20562
20563 * fileio.c (Fvisited_file_modtime): Use make_time.
20564
205652007-08-01 Ryo Yoshitake <ryo@shiftmode.net> (tiny change)
20566
20567 * mac.c (init_mac_osx_environment): Adjust load-path on self-contained
20568 build.
20569
205702007-07-31 Stefan Monnier <monnier@iro.umontreal.ca>
20571
20572 * gtkutil.c (xg_tool_bar_callback): Generate a single TOOL_BAR_EVENT.
20573
205742007-07-30 Katsumi Yamaoka <yamaoka@jpl.org>
20575
20576 * puresize.h (BASE_PURESIZE): Increase to 1130000.
20577
205782007-07-30 Richard Stallman <rms@gnu.org>
20579
20580 * lread.c (readevalloop, read1): Treat NBSP as whitespace.
20581
205822007-07-29 Jan Djärv <jan.h.d@swipnet.se>
20583
20584 * gmalloc.c (__malloc_initialize): Remove pthread_once. Not needed.
20585
205862007-07-28 Nick Roberts <nickrob@snap.net.nz>
20587
20588 * xdisp.c (decode_mode_spec): Use '@' instead of 'R' to test for
20589 remote default-directory.
20590
20591 * buffer.c (mode-line-format): Update doc string.
20592
205932007-07-27 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
20594
20595 * w32term.c (w32_draw_fringe_bitmap): Extend fringe background to
20596 scroll bar gap.
20597 (x_scroll_bar_create): Set bar->fringe_extended_p.
20598 (w32_set_vertical_scroll_bar): Put leftmost/rightmost scroll bars
20599 on frame edge. Check fringe background extension. Don't clear
20600 extended fringe background area.
20601
20602 * w32term.h (struct scroll_bar): New member fringe_extended_p.
20603 (w32_fill_area): Enclose multiple statements with do ... while (0).
20604
20605 * xterm.c (x_draw_fringe_bitmap) [USE_TOOLKIT_SCROLL_BARS]:
20606 Extend fringe background to scroll bar gap.
20607 (x_scroll_bar_create) [USE_TOOLKIT_SCROLL_BARS]:
20608 Set bar->fringe_extended_p.
20609 (XTset_vertical_scroll_bar) [USE_TOOLKIT_SCROLL_BARS]:
20610 Put leftmost/rightmost scroll bars on frame edge. Check fringe
20611 background extension. Don't clear extended fringe background area.
20612
20613 * xterm.h (struct scroll_bar) [USE_TOOLKIT_SCROLL_BARS]:
20614 New member fringe_extended_p.
20615
206162007-07-25 Glenn Morris <rgm@gnu.org>
20617
20618 * Relicense all FSF files to GPLv3 or later.
20619
20620 * COPYING: Switch to GPLv3.
20621
206222007-07-25 Stefan Monnier <monnier@iro.umontreal.ca>
20623
20624 * eval.c (Fcommandp): Pay attention to the `interactive-form' property.
20625
20626 * data.c (Finteractive_form): Check for the presence of an
20627 `interactive-form' symbol property more thoroughly.
20628
20629 * data.c (Finteractive_form): Use an `interactive-form' property if
20630 present, analogous to the function-documentation property.
20631
206322007-07-24 Jason Rumney <jasonr@gnu.org>
20633
20634 * w32fns.c (x_real_positions): Get real position from OS instead of
20635 calculating it.
20636
206372007-07-23 Jason Rumney <jasonr@gnu.org>
20638
20639 * filelock.c (current_lock_owner): Allow for @ sign in username.
20640
206412007-07-22 Nick Roberts <nickrob@snap.net.nz>
20642
20643 * xdisp.c (decode_mode_spec): Add case 'R' for to test for
20644 remote default-directory.
20645
20646 * buffer.c (mode-line-format): Describe above case in doc string.
20647
206482007-07-20 Eli Zaretskii <eliz@gnu.org>
20649
20650 * w32proc.c (IMAGE_NT_OPTIONAL_HDR32_MAGIC, IMAGE_OPTIONAL_HEADER32):
20651 Define if not defined.
20652
206532007-07-18 Jason Rumney <jasonr@gnu.org>
20654
20655 * w32proc.c (w32_executable_type): Handle 64 bit executables.
20656
206572007-07-18 Richard Stallman <rms@gnu.org>
20658
20659 * data.c (Fsetq_default): Doc fix.
20660
20661 * eval.c (Fsetq): Doc fix.
20662
206632007-07-18 Juanma Barranquero <lekktu@gmail.com>
20664
20665 * coding.c (Ffind_operation_coding_system):
20666 * eval.c (For, Fand): Doc fixes.
20667 Reported by Johan Bockgård.
20668
206692007-07-18 Jan Djärv <jan.h.d@swipnet.se>
20670
20671 * xfns.c (Fx_focus_frame): Call x_ewmh_activate_frame.
20672
20673 * xterm.h: Declare x_ewmh_activate_frame.
20674
20675 * xterm.c (x_ewmh_activate_frame): New function.
20676 (XTframe_raise_lower): Move code to x_ewmh_activate_frame.
20677
206782007-07-17 Martin Rudalics <rudalics@gmx.at>
20679
20680 * window.c (Fdisplay_buffer): If largest or LRU window is the
20681 only window, split it even if it is not eligible for splitting.
20682 This restores the original behavior broken by the 2007-07-15
20683 change.
20684
206852007-07-17 Glenn Morris <rgm@gnu.org>
20686
20687 * abbrev.c (abbrev_check_chars): New function.
20688 (Fdefine_global_abbrev, Fdefine_mode_abbrev):
20689 Call abbrev_check_chars to check abbrev characters are word
20690 constituents. Doc fix.
20691
206922007-07-17 Stefan Monnier <monnier@iro.umontreal.ca>
20693
20694 * process.c (Fstart_process, Fmake_network_process)
20695 (read_process_output): Fix up last changes.
20696
206972007-07-16 Eli Zaretskii <eliz@gnu.org>
20698
20699 * makefile.w32-in (clean): Don't delete *~.
20700
207012007-07-16 Andreas Schwab <schwab@suse.de>
20702
20703 * window.c (Fdisplay_buffer): Use NILP.
20704 (Fset_window_scroll_bars): Likewise.
20705
207062007-07-15 Martin Rudalics <rudalics@gmx.at>
20707
20708 * window.c (window_min_size_2): New function.
20709 (window_min_size_1, size_window, Fdisplay_buffer)
20710 (Fsplit_window, adjust_window_trailing_edge): Use it to avoid
20711 windows without mode- or header-lines when window-min-height is
20712 too small.
20713 (size_window): Reset nodelete_p after testing it, following an
20714 earlier note by Kim F. Storm.
20715 (display_buffer): Do not set split_height_threshold to twice the
20716 value of window_min_height to avoid changing the value of a
20717 customizable variable. Rather explicitly check whether the
20718 height of the window that shall be splitted is at least as large
20719 as split_height_threshold.
20720 (Fwindow_full_width_p): New defun.
20721 (syms_of_window): Defsubr it.
20722
20723 * window.h: Add EXFUN for Fwindow_full_width_p.
20724
207252007-07-14 Jason Rumney <jasonr@gnu.org>
20726
20727 * process.c [WINDOWSNT]: Don't undefine AF_INET6.
20728
207292007-07-14 Richard Stallman <rms@gnu.org>
20730
20731 * eval.c (maybe_call_debugger): New function.
20732 (find_handler_clause): Use maybe_call_debugger.
20733 Call it when the handler says `debug'.
20734 Eliminate DEBUGGER_VALUE_PTR.
20735 (Fsignal): Eliminate debugger_value.
20736 (Qdebug): New variable.
20737 (syms_of_eval): Initialize it.
20738
207392007-07-14 Juanma Barranquero <lekktu@gmail.com>
20740
20741 * eval.c (Fprogn):
20742 * keyboard.c (Ftrack_mouse):
20743 * print.c (Fwith_output_to_temp_buffer):
20744 * window.c (Fsave_window_excursion): Doc fix.
20745
207462007-07-13 Stefan Monnier <monnier@iro.umontreal.ca>
20747
20748 * eval.c (init_eval_once): Bump max_lisp_eval_depth to 400.
20749
207502007-07-12 Stefan Monnier <monnier@iro.umontreal.ca>
20751
20752 * process.h (struct Lisp_Process): Turn slots infd, outfd,
20753 kill_without_query, pty_flag, tick, update_tick, decoding_carryover,
20754 inherit_coding_system_flag, filter_multibyte, adaptive_read_buffering,
20755 read_output_delay, and read_output_skip from Lisp_Objects to ints.
20756 Remove unused encoding_carryover.
20757 * process.c: Adjust all functions accordingly.
20758
207592007-07-12 Richard Stallman <rms@gnu.org>
20760
20761 * term.c: Include unistd.h only if HAVE_UNISTD_H.
20762
207632007-07-11 Jason Rumney <jasonr@gnu.org>
20764
20765 * makefile.w32-in (LIBS): Include OLE32.
20766
20767 * w32fns.c (w32_msg_pump) <WM_EMACS_CREATEWINDOW>: Initialize COM.
20768 (w32_msg_pump) <WM_DESTROY>: Uninitialize COM.
20769
207702007-07-11 Stefan Monnier <monnier@iro.umontreal.ca>
20771
20772 * lisp.h (struct Lisp_Hash_Table): Turn next_weak into a bare pointer.
20773 * fns.c (weak_hash_tables): Rename from Vweak_hash_tables and turned
20774 from a Lisp_Object into a bare pointer.
20775 (make_hash_table, copy_hash_table, sweep_weak_hash_tables, init_fns):
20776 Adjust the code correspondingly.
20777
20778 * alloc.c (emacs_blocked_free): Remove unused var `bytes_used_now'.
20779
20780 * term.c: Include unistd.h for ttyname, used in handle_one_term_event.
20781 (term_show_mouse_face): Remove unused var `j'.
20782 (handle_one_term_event): Remove unused vars `i' and `j'.
20783 Don't cast return value of ttyname since it's not necessary.
20784
207852007-07-10 Stefan Monnier <monnier@iro.umontreal.ca>
20786
20787 * alloc.c (mark_maybe_pointer): Enforce mult-of-8 alignment when using
20788 USE_LSB_TAG. Suggested by Dmitry Antipov <dmantipov@yandex.ru>.
20789
20790 * fns.c (map_char_table): Use an array of int for `indices' rather than
20791 an array of Lisp_Objects (which are only ever integers anyway).
20792 (Fmap_char_table): Update caller.
20793 * lisp.h: Update prototype.
20794 * keymap.c (Fset_keymap_parent, map_keymap, Fcopy_keymap):
20795 * fontset.c (Ffontset_info):
20796 * casetab.c (set_case_table): Update callers.
20797
20798 * editfns.c (Ftranspose_regions): Use EMACS_INT for positions.
20799
20800 * keymap.c (struct accessible_keymaps_data)
20801 (struct where_is_internal_data): New structures.
20802 (accessible_keymaps_1, where_is_internal_1): Use them to change
20803 interface to adhere to the one used by map_keymap.
20804 (Faccessible_keymaps, where_is_internal): Use map_keymap.
20805 (accessible_keymaps_char_table, where_is_internal_2): Remove.
20806
20807 * keymap.h (map_keymap_function_t): More informative prototype.
20808
208092007-07-10 Guanpeng Xu <herberteuler@hotmail.com>
20810
20811 * search.c (Vinhibit_changing_match_data, search_regs_1): New vars.
20812 (looking_at_1): Don't change search_regs and last_thing_searched
20813 if `inhibit-changing-match-data' is non-nil.
20814 (string_match_1, search_buffer, set_search_regs): Likewise.
20815 (syms_of_search): Add Lisp level definition for
20816 `inhibit-changing-match-data' and set it to nil.
20817 (boyer_moore): If `inhibit-changing-match-data' is non-nil, compute
20818 start and end of the match, instead of using values in search_regs.
20819
208202007-07-01 Stefan Monnier <monnier@iro.umontreal.ca>
20821
20822 * minibuf.c (Fcompleting_read): New value `confirm-only'
20823 for `require-match'.
20824
208252007-06-28 Stefan Monnier <monnier@iro.umontreal.ca>
20826
20827 * fileio.c (Fdo_auto_save): Revert last patch installed unwillingly as
20828 part of the 2007-06-27 change to syms_of_fileio.
20829
208302007-06-28 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
20831
20832 * macterm.c [USE_MAC_TSM] (mac_handle_text_input_event):
20833 Check WINDOWP before using XWINDOW. Consolidate return statements.
20834
208352007-06-27 Richard Stallman <rms@gnu.org>
20836
20837 * fileio.c (syms_of_fileio) <after-insert-file-functions>: Doc fix.
20838
208392007-06-27 Juanma Barranquero <lekktu@gmail.com>
20840
20841 * buffer.c (syms_of_buffer) <selective-display>: Fix typo in docstring.
20842
208432007-06-26 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
20844
20845 * gmalloc.c [HAVE_GTK_AND_PTHREAD]: Check this after including config.h.
20846 (_aligned_blocks_mutex) [USE_PTHREAD]: New variable.
20847 (LOCK_ALIGNED_BLOCKS, UNLOCK_ALIGNED_BLOCKS): New macros.
20848 (_free_internal, memalign): Use them.
20849 (_malloc_mutex, _aligned_blocks_mutex) [USE_PTHREAD]:
20850 Initialize to PTHREAD_MUTEX_INITIALIZER.
20851 (malloc_initialize_1) [USE_PTHREAD]: Don't use recursive mutex.
20852 (morecore_nolock): Rename from morecore. All uses changed.
20853 Use only nolock versions of internal allocation functions.
20854 (_malloc_internal_nolock, _realloc_internal_nolock)
20855 (_free_internal_nolock): New functions created from
20856 _malloc_internal, _realloc_internal, and _free_internal.
20857 (_malloc_internal, _realloc_internal, _free_internal): Use them.
20858 Copy hook value to automatic variable before its use.
20859 (memalign): Copy hook value to automatic variable before its use.
20860
208612007-06-26 Kenichi Handa <handa@m17n.org>
20862
20863 * coding.c (Ffind_operation_coding_system): Docstring improved.
20864 (syms_of_coding): Docstring of `file-coding-system-alist' improved.
20865
208662007-06-25 David Kastrup <dak@gnu.org>
20867
20868 * keymap.c (Fcurrent_active_maps): Add `position' argument.
20869 (Fwhere_is_internal): Adjust call to `current-active-maps' to
20870 cater for additional parameter.
20871
20872 * keymap.h: Adjust number of parameters to `current-active-maps'.
20873
20874 * doc.c (Fsubstitute_command_keys): Adjust call of
20875 `current-active-maps'.
20876
208772007-06-25 David Kastrup <dak@gnu.org>
20878
20879 * callint.c (Fcall_interactively): Make the parsing of interactive
20880 specs somewhat more readable.
20881
208822007-06-23 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
20883
20884 * macterm.c (x_draw_fringe_bitmap) [MAC_OSX]: Extend fringe background
20885 to scroll bar gap also when bitmap fills fringe. Draw only foreground
20886 if extended background has already been filled.
20887
208882007-06-22 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
20889
20890 * macgui.h (USE_CG_DRAWING): Don't require USE_ATSUI.
20891 (USE_MAC_TOOLBAR): Require USE_CG_DRAWING.
20892
20893 * macmenu.c (mac_dialog_modal_filter, Fx_popup_dialog) [MAC_OSX]:
20894 Put special treatment for Fmessage_box, Fyes_or_no_p, and Fy_or_n_p
20895 in #if 0 as it is not compatible with y-or-n-p-with-timeout.
20896 (timer_check) [TARGET_API_MAC_CARBON]: Add extern.
20897 [TARGET_API_MAC_CARBON] (mac_handle_dialog_event): Use QuitEventLoop
20898 instead of QuitAppModalLoopForWindow. Consolidate QuitEventLoop calls.
20899 (pop_down_dialog) [TARGET_API_MAC_CARBON]: New function.
20900 [TARGET_API_MAC_CARBON] (create_and_show_dialog): Use it for unwind.
20901 Run timers during dialog popup.
20902 (Fmenu_or_popup_active_p) [TARGET_API_MAC_CARBON]: Use popup_activated.
20903
209042007-06-21 Jason Rumney <jasonr@gnu.org>
20905
20906 * image.c (convert_mono_to_color_image): Swap fore and background.
20907
209082007-06-20 Jason Rumney <jasonr@gnu.org>
20909
20910 * w32bdf.c (w32_BDF_to_x_font): Unmap memory when finished.
20911 (w32_free_bdf_font): Unmap memory not handle.
20912
209132007-06-20 Sam Steingold <sds@gnu.org>
20914
20915 * gmalloc.c (__morecore): Fix the declaration to comply with the
20916 definition.
20917
209182007-06-20 Juanma Barranquero <lekktu@gmail.com>
20919
20920 * w32term.c (w32_delete_display): Remove leftover declaration.
20921 (w32_define_cursor, w32_initialize): Make static.
20922
20923 * w32.c (_wsa_errlist): Fix typo in error message.
20924 (init_environment): Ignore any environment variable from the
20925 registry having a null value.
20926
209272007-06-20 Glenn Morris <rgm@gnu.org>
20928
20929 * Makefile.in (LIBGIF): Default to -lgif.
20930
209312007-06-17 Jason Rumney <jasonr@gnu.org>
20932
20933 * w32menu.c (add_menu_item): Don't use multibyte string functions on
20934 unicode strings.
20935
209362007-06-16 Juanma Barranquero <lekktu@gmail.com>
20937
20938 * xdisp.c (syms_of_xdisp) <auto-resize-tool-bars>:
20939 Fix typo in docstring.
20940
209412007-06-16 Eli Zaretskii <eliz@gnu.org>
20942
20943 * w32menu.c (add_menu_item): Escape `&' characters in menu items
20944 and their keybindings.
20945
209462007-06-15 Chong Yidong <cyd@stupidchicken.com>
20947
20948 * composite.c (update_compositions): Fix last fix.
20949
209502007-06-14 Jason Rumney <jasonr@gnu.org>
20951
20952 * w32.c (get_process_times_fn): New function pointer.
20953 (globals_of_w32): Intialize it if present in kernel32.dll.
20954 (w32_get_internal_run_time): New function.
20955
20956 * editfns.c (Fget_internal_run_time) [WINDOWSNT]: Use it.
20957
209582007-06-14 Kenichi Handa <handa@etlken.m17n.org>
20959
20960 * composite.c (update_compositions): Check the validness of
20961 compositions.
20962
209632007-06-14 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
20964
20965 * frame.h (struct frame) [MAC_OS]: New member external_tool_bar.
20966 (FRAME_EXTERNAL_TOOL_BAR) [MAC_OS]: Use it.
20967
20968 * macfns.c (mac_window) [USE_MAC_TOOLBAR]: Set toolbar_win_gravity.
20969 (x_set_tool_bar_lines) [USE_MAC_TOOLBAR]: Set FRAME_EXTERNAL_TOOL_BAR.
20970
20971 * macgui.h (USE_MAC_TOOLBAR): New define.
20972
20973 * macmenu.c [TARGET_API_MAC_CARBON] (menu_target_item_handler):
20974 Return immediately unless popup is activated.
20975
20976 * macterm.c (x_draw_fringe_bitmap) [MAC_OSX]: Extend fringe
20977 background to scroll bar gap.
20978 (x_scroll_bar_create) [MAC_OSX]: Set bar->fringe_extended_p.
20979 (XTset_vertical_scroll_bar) [MAC_OSX]: Put leftmost/rightmost
20980 scroll bars on frame edge. Check fringe background extension.
20981 Don't clear extended fringe background area.
20982 (TOOLBAR_IDENTIFIER, TOOLBAR_ICON_ITEM_IDENTIFIER)
20983 (TOOLBAR_ITEM_COMMAND_ID_OFFSET, TOOLBAR_ITEM_COMMAND_ID_P)
20984 (TOOLBAR_ITEM_COMMAND_ID_VALUE, TOOLBAR_ITEM_MAKE_COMMAND_ID):
20985 [USE_MAC_TOOLBAR]: New macros.
20986 (mac_move_window_with_gravity, mac_get_window_origin_with_gravity)
20987 (mac_handle_toolbar_event, mac_image_spec_to_cg_image)
20988 (mac_create_frame_tool_bar, update_frame_tool_bar, free_frame_tool_bar)
20989 (mac_tool_bar_note_mouse_movement, mac_handle_toolbar_command_event)
20990 [USE_MAC_TOOLBAR]: New functions.
20991 (mac_handle_window_event) [USE_MAC_TOOLBAR]: Reposition window
20992 manually if previous repositioning has failed.
20993 (mac_handle_keyboard_event): Use precomputed event kind.
20994 (XTread_socket) [USE_MAC_TOOLBAR]: Handle click in structure region
20995 as tool bar item click. Handle mouse movement over tool bar items.
20996
20997 * macterm.h (struct mac_output) [USE_MAC_TOOLBAR]: New member
20998 toolbar_win_gravity.
20999 (struct scroll_bar) [MAC_OSX]: New member fringe_extended_p.
21000 (update_frame_tool_bar, free_frame_tool_bar) [USE_MAC_TOOLBAR]:
21001 Add externs.
21002
21003 * xdisp.c (update_tool_bar, redisplay_tool_bar, redisplay_window)
21004 [USE_MAC_TOOLBAR]: Sync with GTK+ tool bar display.
21005
210062007-06-14 Chong Yidong <cyd@stupidchicken.com>
21007
21008 * image.c (search_image_cache): Remove unused variable.
21009
210102007-06-13 Chong Yidong <cyd@stupidchicken.com>
21011
21012 * xfns.c, xmenu.c: Link to xaw3d if available.
21013
210142007-06-13 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
21015
21016 * dispextern.h (struct image) [HAVE_WINDOW_SYSTEM]: New members
21017 frame_foreground and frame_background.
21018
21019 * image.c (lookup_image): Save frame foreground and background colors.
21020 (search_image_cache): Check if saved and current frame colors match.
21021
210222007-06-12 Stefan Monnier <monnier@iro.umontreal.ca>
21023
21024 * regex.c (regex_compile): Remove the `regnum' counter.
21025 Use bufp->re_nsub instead. Add support for \(?N:RE\).
21026
210272007-06-11 Stefan Monnier <monnier@iro.umontreal.ca>
21028
21029 * term.c: Include intervals.h to declare Fget_text_property.
21030
210312007-06-10 Jason Rumney <jasonr@gnu.org>
21032
21033 * w32fns.c (Fx_file_dialog): Take size from struct not pointer.
21034
210352007-06-08 Juanma Barranquero <lekktu@gmail.com>
21036
21037 * callint.c (Fcall_interactively):
21038 * editfns.c (Fdelete_and_extract_region):
21039 * fileio.c (Fread_file_name):
21040 * fns.c (Fmapconcat):
21041 * keyboard.c (cmd_error_internal):
21042 * keymap.c (Fkey_description):
21043 * lread.c (openp):
21044 * minibuf.c (read_minibuf):
21045 * search.c (wordify):
21046 * sunfns.c (sel_read):
21047 * xdisp.c (Fformat_mode_line, syms_of_xdisp):
21048 * xfns.c (x_default_scroll_bar_color_parameter):
21049 * xmenu.c (menu_help_callback):
21050 * xselect.c (Fx_get_atom_name):
21051 * xterm.c (x_term_init): Use empty_unibyte_string.
21052
210532007-06-08 Dmitry Antipov <dmantipov@yandex.ru> (tiny change)
21054
21055 * alloc.c (init_strings): Initialize canonical empty strings.
21056 (make_uninit_string, make_uninit_multibyte_string): Return appropriate
21057 canonical empty string when the requested size is 0.
21058
21059 * emacs.c (empty_unibyte_string): Rename from empty_string.
21060 (empty_multibyte_string): New canonical empty string.
21061 (syms_of_emacs): Don't initialize empty_string.
21062
21063 * lisp.h (STRING_SET_UNIBYTE): Return the canonical empty unibyte
21064 string, if appropriate.
21065 (empty_unibyte_string, empty_multibyte_string): New externs.
21066 (empty_string): Remove extern.
21067
21068 * lread.c (syms_of_lread): Use empty_unibyte_string.
21069
210702007-06-07 Jason Rumney <jasonr@gnu.org>
21071
21072 * s/ms-w32.h: Don't define HAVE_TZNAME.
21073
21074 * editfns.c (Fcurrent_time_zone): Remove hack for Japanese Windows.
21075
210762007-06-07 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
21077
21078 * mac.c (xrm_get_preference_database): Remove BLOCK_INPUT.
21079
21080 * macfns.c (mac_get_window_bounds): Move extern to macterm.h.
21081 (compute_tip_xy) [TARGET_API_MAC_CARBON]: Use GetGlobalMouse.
21082
21083 * macmenu.c [TARGET_API_MAC_CARBON] (menu_target_item_handler):
21084 Don't call next handler.
21085 [TARGET_API_MAC_CARBON] (install_menu_target_item_handler):
21086 Remove argument. Install handler to application.
21087 (set_frame_menubar): Don't change deep_p.
21088 (mac_menu_show): Use FRAME_OUTER_TO_INNER_DIFF_X and
21089 FRAME_OUTER_TO_INNER_DIFF_Y.
21090 (DIALOG_BUTTON_COMMAND_ID_OFFSET, DIALOG_BUTTON_COMMAND_ID_P)
21091 (DIALOG_BUTTON_COMMAND_ID_VALUE, DIALOG_BUTTON_MAKE_COMMAND_ID)
21092 [HAVE_DIALOGS]: New macros.
21093 [HAVE_DIALOGS] (mac_handle_dialog_event, create_and_show_dialog):
21094 Use them.
21095 (fill_menubar) [TARGET_API_MAC_CARBON]: Use CFString.
21096
21097 * macselect.c [MAC_OSX] (install_service_handler): Rename from
21098 init_service_handler. All callers changed. Return OSStatus value.
21099
21100 * macterm.c (mac_begin_cg_clip): New arg F. Call SetPortWindowPort.
21101 All callers changed so as not to call SetPortWindowPort.
21102 (mac_begin_cg_clip) [USE_CG_DRAWING]: Call mac_prepare_for_quickdraw.
21103 (mac_draw_image_string_atsui) [USE_ATSUI]: New function created from
21104 mac_draw_string_common.
21105 (mac_draw_image_string_qd): Likewise.
21106 (mac_draw_string_common): Use them. Add INLINE.
21107 (XTmouse_position, x_scroll_bar_report_motion) [TARGET_API_MAC_CARBON]:
21108 Use FRAME_OUTER_TO_INNER_DIFF_X, FRAME_OUTER_TO_INNER_DIFF_Y, and
21109 GetGlobalMouse.
21110 (x_set_mouse_pixel_position) [MAC_OSX]: Use FRAME_OUTER_TO_INNER_DIFF_X
21111 and FRAME_OUTER_TO_INNER_DIFF_Y.
21112 [TARGET_API_MAC_CARBON] (mac_handle_mouse_event): Likewise.
21113 [USE_MAC_TSM] (mac_handle_text_input_event): Likewise.
21114 (x_make_frame_visible) [TARGET_API_MAC_CARBON]: Move code for
21115 repositioning window to mac_handle_window_event.
21116 (x_make_frame_invisible) [TARGET_API_MAC_CARBON]: Move code for
21117 saving window location to mac_handle_window_event
21118 [USE_MAC_FONT_PANEL] (mac_show_hide_font_panel): Install handler here.
21119 (install_menu_target_item_handler): Remove argument in extern.
21120 [TARGET_API_MAC_CARBON] (mac_event_to_emacs_modifiers):
21121 Also accept command events.
21122 (do_keystroke): New function created from XTread_socket.
21123 (init_command_handler): Remove functions.
21124 [TARGET_API_MAC_CARBON] (mac_handle_window_event): Reposition window
21125 and save window location by kEventWindowShowing and kEventWindowHiding
21126 handlers here. Don't call next handler for window state change and
21127 focus events.
21128 (mac_handle_application_event, mac_handle_keyboard_event)
21129 [TARGET_API_MAC_CARBON]: New functions.
21130 (install_window_handler) [TARGET_API_MAC_CARBON]: Register handlers for
21131 kEventWindowShowing and kEventWindowHiding events. Move installation
21132 of mouse, font, text input and menu target item handlers to
21133 install_application_handler.
21134 (install_application_handler) [TARGET_API_MAC_CARBON]: New function.
21135 (mac_handle_cg_display_reconfig) [MAC_OS_X_VERSION_MAX_ALLOWED >= 1030]:
21136 New function.
21137 (init_dm_notification_handler) [MAC_OS_X_VERSION_MAX_ALLOWED >= 1030]:
21138 Register it.
21139 (XTread_socket) [TARGET_API_MAC_CARBON]:
21140 Consolidate SendEventToEventTarget calls.
21141 Use FRAME_OUTER_TO_INNER_DIFF_X and FRAME_OUTER_TO_INNER_DIFF_Y.
21142 Move application activation handler to mac_handle_application_event.
21143 Move keyboard handler to mac_handle_keyboard_event.
21144 (XTread_socket) [!TARGET_API_MAC_CARBON]: Use do_keystroke.
21145 (mac_initialize) [TARGET_API_MAC_CARBON]: Don't call
21146 init_command_handler. Call install_application_handler.
21147
21148 * macterm.h (mac_get_window_bounds): Move extern from macfns.c.
21149 (FRAME_OUTER_TO_INNER_DIFF_X, FRAME_OUTER_TO_INNER_DIFF_Y): New macros.
21150
211512007-06-07 Glenn Morris <rgm@gnu.org>
21152
21153 * emacs.c (main): Use `emacs-copyright' in --version output.
21154
211552007-06-06 Chong Yidong <cyd@stupidchicken.com>
21156
21157 * image.c (xpm_load): Remove spurious call to xpm_init_color_cache.
21158
211592007-06-06 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
21160
21161 * macfns.c (mac_window): Replace WindowPtr with WindowRef.
21162
21163 * macgui.h: Replace WindowPtr with WindowRef.
21164
21165 * macmenu.c: Replace MenuHandle and GetMenuHandle with MenuRef and
21166 GetMenuRef, respectively. Replace WindowPtr with WindowRef.
21167 Replace ControlHandle with ControlRef.
21168 (install_menu_quit_handler): Rename arg MENU_HANDLE to ROOT_MENU.
21169
21170 * macterm.c: Replace MenuHandle and GetMenuHandle with MenuRef and
21171 GetMenuRef, respectively. Replace WindowPtr with WindowRef.
21172 Replace ControlHandle with ControlRef.
21173 (USE_CARBON_EVENTS): Remove. Use TARGET_API_MAC_CARBON instead.
21174 [MAC_OS8] (do_get_menus): Rename variable `menu_handle' to `menu'.
21175
21176 * macterm.h (struct scroll_bar): Rename member control_handle_low
21177 and control_handle_high to control_ref_low and control_ref_high.
21178 All uses changed.
21179 (SCROLL_BAR_CONTROL_REF, SET_SCROLL_BAR_CONTROL_REF): Rename from
21180 SCROLL_BAR_CONTROL_HANDLE and SET_SCROLL_BAR_CONTROL_HANDLE,
21181 respectively. All uses changed.
21182 (XCreatePixmap, XCreatePixmapFromBitmapData, XSetWindowBackground)
21183 (install_window_handler, remove_window_handler): Replace WindowPtr
21184 with WindowRef in externs.
21185
211862007-06-05 Juanma Barranquero <lekktu@gmail.com>
21187
21188 * xfaces.c (Finternal_lisp_face_p): Signal error for face alias loops.
21189
211902007-06-03 Nick Roberts <nickrob@snap.net.nz>
21191
21192 * keyboard.c (discard_mouse_events): Add GPM_CLICK_EVENT case.
21193
21194 * frame.c (Fmouse_position, Fmouse_pixel_position):
21195 Condition on HAVE_GPM too.
21196
21197 * term.c (term_mouse_highlight): Remove unused variables.
21198 (Fterm_open_connection): Set gpm_zerobased to 1.
21199 (term_mouse_movement, term_mouse_click, handle_one_term_event):
21200 Use zero based co-ordinates.
21201 (handle_one_term_event): Report a drag as mouse movement too.
21202
21203 * Makefile.in (MOUSE_SUPPORT): Define for HAVE_GPM.
21204
212052007-06-03 Chong Yidong <cyd@stupidchicken.com>
21206
21207 * image.c (search_image_cache): New function. Require background
21208 color match if background color is unspecified in the image spec.
21209 (uncache_image, lookup_image): Use it.
21210
212112007-06-01 Juanma Barranquero <lekktu@gmail.com>
21212
21213 * window.c (Fshrink_window): Reflow docstring.
21214
212152007-06-02 Chong Yidong <cyd@stupidchicken.com>
21216
21217 * Version 22.1 released.
21218
212192007-06-01 Richard Stallman <rms@gnu.org>
21220
21221 * xfns.c (x_encode_text): Add GCPRO.
21222
212232007-06-01 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
21224
21225 * xfns.c (x_set_name_internal): Save encoded name before
21226 x_encode_text in case string data is relocated.
21227
212282007-05-31 Richard Stallman <rms@gnu.org>
21229
21230 * buffer.c (syms_of_buffer): Doc fix.
21231
212322007-05-30 Nick Roberts <nickrob@snap.net.nz>
21233
21234 * sysdep.c (init_sys_modes): Add rather than replace with
21235 O_NONBLOCK.
21236
21237 * frame.c [HAVE_GPM] (Fset_mouse_pixel_position): Add call to
21238 term_mouse_moveto.
21239
21240 * termhooks.h (term_mouse_moveto): New extern.
21241
21242 * term.c (mouse_face_window): Rename...
21243 (Qmouse_face_window): ...to this.
21244 (term_show_mouse_face, term_clear_mouse_face)
21245 (term_mouse_highlight): Use Qmouse_face_window.
21246 (term_mouse_moveto): New function.
21247 (term_mouse_position): Make it work.
21248 (syms_of_term): Uncomment assignment to mouse_position_hook.
21249 Staticpro Qmouse_face_window.
21250
212512007-05-28 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
21252
21253 * xdisp.c (redisplay_internal): Bind inhibit-point-motion-hooks to t
21254 around current_column call.
21255
212562007-05-26 Dan Nicolaescu <dann@ics.uci.edu>
21257
21258 * xfaces.c (syms_of_xfaces): Delete stray semicolon.
21259 * xdisp.c (next_element_from_buffer):
21260 * window.c (delete_window):
21261 * term.c (term_mouse_highlight):
21262 * msdos.c (getdefdir):
21263 * macterm.c (mac_create_bitmap_from_bitmap_data)
21264 (init_font_name_table):
21265 * fns.c (Fsxhash):
21266 * data.c (Fmake_local_variable):
21267 * ccl.c (ccl_driver): Likewise.
21268
212692007-05-24 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
21270
21271 * macterm.c [USE_CARBON_EVENTS] (mac_handle_window_event):
21272 Call mac_wakeup_from_rne on window size change.
21273
212742007-05-25 Chong Yidong <cyd@stupidchicken.com>
21275
21276 * image.c (uncache_image): Fix typo.
21277
212782007-05-23 Johannes Weiner <hannes@saeurebad.de> (tiny change)
21279
21280 * keyboard.c (make_lispy_movement): Condition on HAVE_GPM too.
21281
212822007-05-22 Richard Stallman <rms@gnu.org>
21283
21284 * xterm.c (x_connection_closed): Remove NO_RETURN.
21285
212862007-05-22 Martin Rudalics <rudalics@gmx.at>
21287
21288 * syntax.c (scan_words): Fix arg to UPDATE_SYNTAX_TABLE_BACKWARD.
21289
212902007-05-21 Chong Yidong <cyd@stupidchicken.com>
21291
21292 * image.c (uncache_image): New function.
21293 (Fimage_refresh): New function.
21294
212952007-05-20 Jan Djärv <jan.h.d@swipnet.se>
21296
21297 * Makefile.in: Move GPM check outside HAVE_X_WINDOWS.
21298
212992007-05-20 Nick Roberts <nickrob@snap.net.nz>
21300
21301 * config.in, keyboard.c, Makefile.in, sysdep.c, term.c,
21302 * termhooks.h: Use HAVE_GPM instead of HAVE_GPM_H.
21303
213042007-05-20 Nick Roberts <nickrob@snap.net.nz>
21305
21306 * keyboard.c (make_lispy_event): Make case GPM_CLICK_EVENT
21307 conditional on [HAVE_GPM_H].
21308
213092007-05-19 Stefan Monnier <monnier@iro.umontreal.ca>
21310
21311 * syntax.c (skip_chars): Update syntax-table only after we checked that
21312 the new location is valid.
21313
213142007-05-19 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
21315
21316 * macterm.c (x_calc_absolute_position): Add BLOCK_INPUT around
21317 mac_get_window_bounds.
21318
213192007-05-20 Nick Roberts <nickrob@snap.net.nz>
21320
21321 * Makefile.in (LIBGPM): Allow it to be set from configure.
21322 If set then link Emacs with it.
21323
21324 * config.in: Regenerate.
21325
21326 * lisp.h (add_gpm_wait_descriptor, delete_gpm_wait_descriptor):
21327 New externs.
21328
21329 * termhooks.h [HAVE_GPM_H] (enum event_kind): Add GPM_CLICK_EVENT.
21330 Include gpm.h.
21331 (handle_one_term_event, term_gpm): New externs.
21332
21333 * sysdep.c [HAVE_GPM_H] (init_sys_modes): Make gpm_fd nonblocking
21334 and allow it to be interrupted by SIGIO.
21335
21336 * process.c (gpm_wait_mask, max_gpm_desc): New variables.
21337 (wait_reading_process_output): Wait on gpm_fd too.
21338 (add_gpm_wait_descriptor, delete_gpm_wait_descriptor)): New functions.
21339 (add_gpm_wait_descriptor_called_flag): New variable.
21340 (delete_keyboard_wait_descriptor): Check gpm_wait_mask.
21341
21342 * keyboard.c [HAVE_GPM_H] (Qmouse_fixup_help_message)
21343 (make_lispy_movement, tracking_off, Ftrack_mouse, some_mouse_moved)
21344 (show_help_echo, readable_events, kbd_buffer_get_event, init_keyboard):
21345 Extend HAVE_MOUSE ifdefs to HAVE_GPM_H.
21346 (make_lispy_event): Add case GPM_CLICK_EVENT.
21347 (read_avail_input): Handle mouse input.
21348
21349 * term.c (write_glyphs_with_face): New function.
21350 [HAVE_GPM_H]: Include buffer.h, sys/fcntl.h.
21351 (mouse_face_beg_row, mouse_face_beg_col, mouse_face_end_row)
21352 (mouse_face_end_col, mouse_face_past_end, mouse_face_window)
21353 (mouse_face_face_id, term_gpm, pos_x, pos_y)
21354 (last_mouse_x, last_mouse_y): New variables.
21355 (term_show_mouse_face, term_clear_mouse_face, fast_find_position)
21356 (term_mouse_highlight, term_mouse_movement, term_mouse_position)
21357 (term_mouse_click, handle_one_term_event, Fterm_open_connection)
21358 (Fterm_close_connection): New functions.
21359 (term_init): Initialise mouse_face_window.
21360
213612007-05-19 Chong Yidong <cyd@stupidchicken.com>
21362
21363 * xdisp.c (redisplay_window): If first window line is a
21364 continuation line, recompute the new window start instead of
21365 recentering.
21366
213672007-05-18 Glenn Morris <rgm@gnu.org>
21368
21369 * m/alpha.h (ORDINARY_LINK): No longer define on OpenBSD.
21370 Suggested by Alfred M. Szmidt <ams@gnu.org>.
21371
213722007-05-17 Glenn Morris <rgm@gnu.org>
21373
21374 * m/macppc.h (ORDINARY_LINK): No longer define on OpenBSD.
21375
213762007-05-16 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
21377
21378 * macterm.c [USE_CARBON_EVENTS] (mac_convert_event_ref): Also convert
21379 dead key repeat and up events.
21380
213812007-05-14 Chong Yidong <cyd@stupidchicken.com>
21382
21383 * image.c (pbm_load): Check image size for monochrome pbm.
21384
213852007-05-13 Chong Yidong <cyd@stupidchicken.com>
21386
21387 * xterm.c (XTread_socket): Revert last change.
21388
213892007-05-12 Chong Yidong <cyd@stupidchicken.com>
21390
21391 * image.c (pbm_load): Correctly check image size for greyscale pbm.
21392
21393 * xterm.c (XTread_socket): Yet Another Uncaught X Error Crash (YAUXEC).
21394
213952007-05-07 Stefan Monnier <monnier@iro.umontreal.ca>
21396
21397 * editfns.c (Ftranspose_regions): Yet another int/Lisp_Object
21398 mixup (YAILOM).
21399
214002007-05-07 Andreas Schwab <schwab@suse.de>
21401
21402 * keymap.c (Flookup_key): Fix typo in last change.
21403
214042007-05-07 Stefan Monnier <monnier@iro.umontreal.ca>
21405
21406 * keymap.c (Fdefine_key, Flookup_key): Only do the 0x80->meta_modifier
21407 mapping for unibyte strings.
21408
214092007-05-01 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
21410
21411 * macmenu.c (mac_dialog_show): Apply 2007-04-27 change for xmenu.c.
21412 (Fx_popup_dialog) [MAC_OSX]: Likewise.
21413
214142007-04-29 Richard Stallman <rms@gnu.org>
21415
21416 * insdel.c (replace_range): For undo, record insertion first.
21417
214182007-04-29 Andreas Schwab <schwab@suse.de>
21419
21420 * lisp.h (VECSIZE): Use OFFSETOF.
21421
214222007-04-29 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
21423
21424 * xdisp.c (try_window_reusing_current_matrix): Fix number of
21425 disabled lines.
21426
214272007-04-28 Richard Stallman <rms@gnu.org>
21428
21429 * lread.c (read_escape): In a string, \s is always space.
21430
214312007-04-27 Jan Djärv <jan.h.d@swipnet.se>
21432
21433 * xmenu.c (xdialog_show): Call Fredisplay before showing the dialog.
21434
21435 * gtkutil.c (xg_update_menubar, create_menus): Create empty
21436 submenu for menu bar items.
21437
21438See ChangeLog.10 for earlier changes.
21439
21440;; Local Variables:
21441;; coding: utf-8
21442;; add-log-time-zone-rule: t
aac0c6e3
MR
21443;; End:
21444
e3eb1dae 21445 Copyright (C) 2007, 2008, 2009, 2010 Free Software Foundation, Inc.
aac0c6e3
MR
21446
21447 This file is part of GNU Emacs.
21448
21449 GNU Emacs is free software: you can redistribute it and/or modify
21450 it under the terms of the GNU General Public License as published by
21451 the Free Software Foundation, either version 3 of the License, or
21452 (at your option) any later version.
21453
21454 GNU Emacs is distributed in the hope that it will be useful,
21455 but WITHOUT ANY WARRANTY; without even the implied warranty of
21456 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
21457 GNU General Public License for more details.
21458
21459 You should have received a copy of the GNU General Public License
21460 along with GNU Emacs. If not, see <http://www.gnu.org/licenses/>.
21461
21462;; arch-tag: dfb6ad96-1550-4905-9e53-d2059ee84c40